6515 Commits

Author SHA1 Message Date
dreis2211
ec57f0c31f Fix upstream RSocket method renames
See gh-17973
2019-08-27 13:12:52 +01:00
Vedran Pavic
cb3efc1ef6 Add dependency management for IBM DB2 JDBC driver
See gh-17782
2019-08-27 11:19:19 +02:00
Stephane Nicoll
cda310ba0a Polish "Fix a broken Asciidoctor syntax"
See gh-17970
2019-08-27 11:11:57 +02:00
Johnny Lim
78a467f9d3 Fix a broken Asciidoctor syntax
See gh-17970
2019-08-27 11:10:39 +02:00
Stephane Nicoll
e92a530640 Merge branch '2.1.x'
Closes gh-17972
2019-08-27 11:07:45 +02:00
leoli
34d28f48ca Fix Undertow access log dir property name in doc
See gh-17968
2019-08-27 11:06:16 +02:00
Madhura Bhave
46ea4a2501 isPublisherConfirms in RabbitProperties should not throw NPE
Fixes gh-17967
2019-08-27 08:39:55 +05:30
Phillip Webb
fb846f434f Merge branch '2.1.x'
Fixes gh-17959
2019-08-25 21:37:07 -07:00
Phillip Webb
4c446c38a6 Only add management error page for Spring MVC
Move management `ErrorPage` registration from the
`WebMvcEndpointChildContextConfiguration` to
`WebMvcEndpointChildContextConfiguration` and only add it when the
error controller is registered.

Fixes gh-17938
2019-08-25 21:34:25 -07:00
Stephane Nicoll
7d994e607d Restructure tests to exercise deprecated property in a dedicated test
See gh-17848
2019-08-24 08:22:28 +02:00
Madhura Bhave
21783faede Merge branch '2.1.x'
Closes gh-17953
2019-08-23 19:44:16 -07:00
Madhura Bhave
28d374d84d Polish "Configure Issuer Validator for Resource Server"
See gh-17952
2019-08-23 19:34:49 -07:00
HaiTao Zhang
b3d189cf87 Configure Issuer Validator for Resource Server
See gh-17952
2019-08-23 19:34:31 -07:00
Madhura Bhave
8954fe13e5 Polish "Support additional publisher confirm types"
See gh-17848
2019-08-23 18:44:42 -07:00
HaiTao Zhang
8c1c8a27d9 Support additional publisher confirm types
See gh-17848
2019-08-23 18:44:15 -07:00
Madhura Bhave
7829593746 Polish "Sanitize password in URI properties"
See gh-17939
2019-08-23 18:16:46 -07:00
HaiTao Zhang
d49a2ec98e Sanitize password in URI properties
See gh-17939
2019-08-23 18:10:43 -07:00
Madhura Bhave
0fee0ca71c Merge pull request #17915 from htztomic
* pr/17915:
  Polish "Added support for devtools YAML configuration"
  Added support for devtools YAML configuration

Closes gh-17915
2019-08-23 14:39:07 -07:00
Madhura Bhave
48b5b6a24c Polish "Added support for devtools YAML configuration"
See gh-17915
2019-08-23 14:37:54 -07:00
HaiTao Zhang
00a3ad0fd1 Added support for devtools YAML configuration
See gh-17915
2019-08-23 14:33:39 -07:00
Andy Wilkinson
b54ff7c45f Merge branch '2.1.x'
Closes gh-17950
2019-08-23 20:34:35 +01:00
Andy Wilkinson
608228d617 Improve handling of non-standard status codes in WebClient metrics
Fixes gh-17695
2019-08-23 20:28:26 +01:00
Andy Wilkinson
ba6fe60134 Merge branch '2.1.x'
Closes gh-17948
2019-08-23 19:15:02 +01:00
Andy Wilkinson
52050c173c Fix spying on scoped beans with @SpyBean
Previously, when spying on a scoped bean the creation of the spy
would be performed using the scoped proxy. This would result in
the spy being unable to spy on any of the target bean's methods as
the scoped proxy's implementations of those methods would be final.

This commit updates MockitoPostProcessor so that the creation of the
spy and injection of the @SpyBean-annotated field is performed using
the scoped target. The scoped target has not be proxied so this
allows Mockito to spy on all of its methods.

Closes gh-17817
2019-08-23 19:03:08 +01:00
Andy Wilkinson
2d2e3b3d8b Support parallel test execution with @AutoConfigureMockMvc
Previously, the deferred line writing that is used, to print MockMvc
results to the console assumed that each DeferredLinesWriter would
only be used by a single thread at a time. This assumption does not
hold true when using JUnit 5's parallel test exection if the tests
running in parallel share an application context. This resulted in
a concurrent modification exception if one thread was adding lines
to the output while another was iterating over them.

This commit updates DeferredLinesWriter so that it uses thread local
storage for the deferred lines. This ensures that each List of lines
is only ever accessed by a single thread.

Closes gh-16179
2019-08-23 14:12:54 +01:00
Stephane Nicoll
52bcdac7b0 Polish 2019-08-23 13:44:24 +02:00
LiangYong
12bfca56d6 Remove unnecessary null check
See gh-17916
2019-08-23 13:25:11 +02:00
Gang Zhang
2b29bea55c Use putIfAbsent() instead of containsKey
See gh-17913
2019-08-23 13:21:23 +02:00
Andy Wilkinson
bac63cf79e Merge branch '2.1.x'
Closes gh-17943
2019-08-23 11:29:24 +01:00
Andy Wilkinson
0fb0eb6e5b Deprecate jackson.version in favour of new jackson-bom.version
The versions of Jackon's bom and the versions of Jackson are often
not the same. For example, at the time of writing, the latest bom
version is 2.9.9.20190807 but the latest version of Jackson's core
is 2.9.9 and the latest version of Jackson's databind is 2.9.9.3.

spring-boot-dependencies using a property, jackson.version, to control
the version of jackson-bom that is imported. To make it clear that the
version property controls the version of Jackson's bom and not of
Jackson itself, this commit deprecates jackson.version in favour of
a new jackson-bom.version property.

An additional benefit of this change is that it addresses a problem
when using Gradle and the dependency management plugin. Jackson's bom
uses a jackson.version property to control the version
of core Jackson modules. This names clashes with the name of the
property used by spring-boot-dependencies. Specifying a custom
jackson.version to control the version of the bom that is imported
would also have the unwanted side-effect of customizing the version of
the core Jackson modules declared in Jackson's bom.

Fixes gh-17808
2019-08-23 11:28:20 +01:00
Andy Wilkinson
c48228f645 Merge branch '2.1.x'
Closes gh-17942
2019-08-23 11:03:43 +01:00
Andy Wilkinson
ac0a22d603 Tolerate LCEMFB with null JpaVendorAdapter in JPA auto-config
Closes gh-17935
2019-08-23 10:39:40 +01:00
Phillip Webb
cb5ca7997b Polish 2019-08-22 15:17:34 -07:00
Phillip Webb
6270f5008d Polish lenient enum converter
See gh-17798
2019-08-22 14:42:07 -07:00
Andy Wilkinson
b43827d626 Configure ping (formerly application) health indicator by default
This commit renames ApplicationHealthIndicator to PingHealthIndicator
and changes the auto-configuration so that it is now always configured
by default.

Closes gh-17926
2019-08-22 14:50:10 +01:00
Andy Wilkinson
05e089601e Remove default favicon and support for serving from classpath root
Closes gh-17925
2019-08-22 13:53:13 +01:00
Phillip Webb
e03f822c6d Add support for health indicator groups
Update the `HealthEndpoint` to support health groups. The
`HealthEndpointSettings` interface has been replaced with
`HealthEndpointGroups` which provides access to the primary group
as well as an optional set of additional groups.

Groups can be configured via properties and may have custom
`StatusAggregator` and `HttpCodeStatusMapper` settings.

Closes gh-14022

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
2019-08-21 18:43:25 -07:00
Phillip Webb
f09e0264d9 Migrate HealthIndicator auto-configurations
Migrate all `HealthIndicator` configuration to `HealthContributor`
configurations instead.

See gh-14022
2019-08-21 18:43:25 -07:00
Phillip Webb
3c535e0de3 Add HealthContributor and refactor HealthEndpoint
Overhaul `HealthEndpoint` support to make it easier to support health
groups. Prior to this commit the `HealthIndicator` interface was used
for both regular indicators and composite indicators. In addition the
`Health` result was used to both represent individual, system and
composite health. This design unfortunately means that all health
contributors need to be aware of the `HealthAggregator` and could not
easily support heath groups if per-group aggregation is required.

This commit reworks many aspects of the health support in order to
provide a cleaner separation between a `HealthIndicator`and a
composite. The following changes have been made:

- A `HealthContributor` interface has been introduced to represent
  the general concept of something that contributes health information.
  A contributor can either be a `HealthIndicator` or a
  `CompositeHealthContributor`.

- A `HealthComponent` class has been introduced to mirror the
  contributor arrangement. The component can be either
  `CompositeHealth` or `Health`.

- The `HealthAggregator` interface has been replaced with a more
  focused `StatusAggregator` interface which only deals with `Status`
  results.

- `CompositeHealthIndicator` has been replaced with
  `CompositeHealthContributor` which only provides access to other
  contributors. A composite can no longer directly return `Health`.

- `HealthIndicatorRegistry` has been replaced with
  `HealthContributorRegistry` and the default implementation now
  uses a copy-on-write strategy.

- `HealthEndpoint`, `HealthEndpointWebExtension` and
  `ReactiveHealthEndpointWebExtension` now extend a common
  `HealthEndpointSupport` class. They are now driven by a
  health contributor registry and `HealthEndpointSettings`.

- The `HealthStatusHttpMapper` class has been replaced by a
  `HttpCodeStatusMapper` interface.

- The `HealthWebEndpointResponseMapper` class has been replaced
  by a `HealthEndpointSettings` strategy. This allows us to move
  role related logic and `ShowDetails` to the auto-configure module.

- `SimpleHttpCodeStatusMapper` and `SimpleStatusAggregator`
  implementations have been added which are configured via constructor
  arguments rather than setters.

- Endpoint auto-configuration has been reworked and the
  `CompositeHealthIndicatorConfiguration` class has been replaced
  by `CompositeHealthContributorConfiguration`.

- The endpoint JSON has been changed make `details` distinct from
  `components`.

See gh-17926
2019-08-21 18:43:25 -07:00
Andy Wilkinson
24b5b0d93e Polish 2019-08-21 15:50:33 +01:00
Andy Wilkinson
87339405f3 Merge branch '2.1.x'
Closes gh-17928
2019-08-21 15:18:13 +01:00
Andy Wilkinson
abe3d38527 Fix OoM error when starting Tomcat with max int load on startup
Fixes gh-17927
2019-08-21 15:17:54 +01:00
dreis2211
6ef6875a60 Correct WebFlux response body method
See gh-17919
2019-08-21 11:07:48 +01:00
Andy Wilkinson
9ac6485768 Prioritise static resource locations over classpath for favicon.ico
Closes gh-17922
2019-08-21 10:42:32 +01:00
Madhura Bhave
55c6ee71c1 Include logger group with configuredLevel in docs
Closes gh-17772
2019-08-20 22:48:26 -07:00
Phillip Webb
5f88c592b3 Polish 2019-08-20 19:27:43 -07:00
Brian Clozel
e7c3ab3e27 Rename WebFlux response body methods
This commit adapts to recent changes in Spring Framework.
See spring-projects/spring-framework#23212
2019-08-20 13:03:24 +02:00
Stephane Nicoll
752bb0f5ab Start building against Spring Kafka 2.3.0 snapshots
See gh-17902
2019-08-20 10:46:00 +02:00
Stephane Nicoll
9dd6edbe56 Start building against Spring Integration 5.2.0 snapshots
See gh-17901
2019-08-20 10:45:20 +02:00
Stephane Nicoll
b2e024f22e Start building against Spring HATEOAS 1.0.0 snapshots
See gh-17904
2019-08-20 10:44:32 +02:00