Commit Graph

9223 Commits (5411274eba4bb35f1a8e722129ff11050eb3cce2)

Author SHA1 Message Date
Stephane Nicoll 17e5b08cba Polish 5 years ago
Stephane Nicoll 5b4c13d767 Start building against Spring Kafka 2.4.6 snapshots
See gh-20953
5 years ago
Stephane Nicoll 88d790a96c Start building against Spring Integration 5.3.0 snapshots
See gh-20951
5 years ago
Stephane Nicoll d02218d838 Start building against Spring Data Neumann-RC2 snapshots
See gh-20949
5 years ago
Stephane Nicoll b05bdbbf0b Start building against Spring AMQP 2.2.6 snapshots
See gh-20947
5 years ago
Stephane Nicoll abfe8940e0 Start building against Spring Framework 5.2.6 snapshots
See gh-20945
5 years ago
Stephane Nicoll 55c8811f2c Start building against Reactor Dysprosium-SR7 snapshots
See gh-20943
5 years ago
Stephane Nicoll 8fa6ec36f4 Remove @ConditionalOnMissingBean check on deprecated class
Closes gh-20968
5 years ago
Madhura Bhave d648b98991 Merge branch '2.2.x'
Closes gh-20964
5 years ago
Madhura Bhave 947594addd Merge branch '2.1.x' into 2.2.x
Closes gh-20963
5 years ago
Madhura Bhave c98fe51914 Make it more obvious that Jolokia does not work with a WebFlux app
Closes gh-20623
5 years ago
Phillip Webb 28da1da241 Update availability/probe documentation
Update the application availability and probes documentation following
the recent set of updates.

See gh-20962
5 years ago
Phillip Webb 5311c04437 Change HealthEndpointGroups customization support
Update the `HealthEndpointGroups` customization support to use a
post-processor rather than a mutable registry. Although this approach
is slightly less flexible, it removes a lot of complexity from the
`HealthEndpointGroups` code. Specifically, it allows us to drop the
`HealthEndpointGroupsRegistry` interface entirely.

The probe health groups are now added via the post-processor if they
aren't already defined. Unlike the previous implementation, users are
no longer able to customize status aggregation and http status code
mapping rules _unless_ they also re-define the health indicators that
are members of the group.

See gh-20962
5 years ago
Phillip Webb f32a37e289 Support `management.health.probes.enabled=false`
Update `AvailabilityProbesAutoConfiguration` to allow the
`management.health.probes.enabled` property to override the platform
detection logic. Prior to this commit, it was possible to use the
property to enable the probes, but it was not possible to disable
them when deploying to Kubernates.

See gh-20962
5 years ago
Phillip Webb 82cfd7c6c9 Restructure probes auto-configuration
Relocate probe auto-configuration from the `kubernetes` package to
`availability` since probes could also be used on other platforms.

The classes have also been renamed to named to `AvailabilityProbes...`

See gh-20962
5 years ago
Phillip Webb 71e4801e68 Rename probe health indicators
Rename `LivenessProbeHealthIndicator` to `LivenessStateHealthIndicator`
and `ReadinessProbeHealthIndicator` to `ReadinessStateHealthIndicator`.

Also introduce a general purpose `AvailabilityStateHealthIndicator`
class.

See gh-20962
5 years ago
Phillip Webb bb79c847b2 Allow custom availability states
Create a general purpose `AvailabilityState` interface and refactor
the existing `LivenessState` and `ReadinessState` to use it. A single
`AvailabilityChangeEvent` is now used to carry all availability state
updates.

This commit also renames `ApplicationAvailabilityProvider` to
`ApplicationAvailabilityBean` and extracts an `ApplicationAvailability`
interface that other beans can inject. The helps to hide the event
listener method, which is really internal.

Finally the state enums have been renamed as follows:

 - `LivenessState.LIVE` -> `LivenessState.CORRECT`
 - `ReadinessState.READY` -> `ReadinessState.ACCEPTING_TRAFFIC`
 - `ReadinessState.UNREADY` -> `ReadinessState.REFUSING_TRAFFIC`

See gh-20962
5 years ago
Stephane Nicoll 6e1ff50328 Start building against Spring Kafka 2.3.8 snapshots
See gh-20952
5 years ago
Stephane Nicoll fafac58311 Start building against Spring Integration 5.2.6 snapshots
See gh-20950
5 years ago
Stephane Nicoll fb11285279 Start building against Spring Data Moore-SR7 snapshots
See gh-20948
5 years ago
Stephane Nicoll 99b576707e Start building against Spring AMQP 2.2.6 snapshots
See gh-20946
5 years ago
Stephane Nicoll ea1345d074 Start building against Spring Framework 5.2.6 snapshots
See gh-20944
5 years ago
Stephane Nicoll 4474da8850 Start building against Reactor Dysprosium-SR7 snapshots
See gh-20942
5 years ago
Brian Clozel 939bb87a02 Merge branch '2.2.x'
Closes gh-20957
5 years ago
Brian Clozel 49bbcceda9 Fix Undertow compression config with invalid Mime Types
Prior to this commit, the Undertow compression configuration provided by
Spring Boot would fail and throw an exception for invalid MIME Types
when trying to check them against the list of configured types for
compression.

This commit ensures that invalid MIME Types are ignored and that
compression is disabled for those.

Fixes gh-20955
5 years ago
Stephane Nicoll a3095d5956 Start building against Spring Integration 5.1.10 snapshots
See gh-20941
5 years ago
Stephane Nicoll 35c66d9088 Start building against Spring Data Lovelace-SR17 snapshots
See gh-20940
5 years ago
Stephane Nicoll 16334304d6 Start building against Spring AMQP 2.1.14 snapshots
See gh-20939
5 years ago
Stephane Nicoll 6a4fbe18c2 Start building against Spring Framework 5.1.15 snapshots
See gh-20938
5 years ago
Stephane Nicoll fca3601477 Start building against Reactor Californium-SR18 snapshots
See gh-20937
5 years ago
Phillip Webb 1604cb2a1e Polish 5 years ago
Johnny Lim cb320288a4 Polish
See gh-20931
5 years ago
Konrado85 9f4c39c985 Change PropertiesLauncher equals method to use URI
See gh-20872
5 years ago
Stephane Nicoll 81e1f1a94a Polish "Add reference to Mule 4 starter"
See gh-20915
5 years ago
Manuel Núñez 22cd477a60 Add reference to Mule 4 starter
See gh-20915
5 years ago
dreis2211 4b9986d790 Remove unused fields in tests
See gh-20926
5 years ago
Brian Clozel ce653059c8 Improve recording of cancellation signal in WebClient
With its initial fix in gh-18444, the `WebClient` instrumentation would
record all CANCEL signals, including:

* when a `timeout` expires and the response has not been received
* when the client partially consumes the response body

Since the second use case is arguable intentional, this commit restricts
the instrumentation and thus avoids recording two events for a single
request in that case.

Closes gh-18444
5 years ago
Stephane Nicoll 73ca703007 Merge branch '2.2.x'
Closes gh-20919
5 years ago
Stephane Nicoll 60f726a080 Polish 5 years ago
Stephane Nicoll 3cdb5a690a Polish "Align Kafka's missingTopicsFatal default value"
See gh-20917
5 years ago
dhimathu a12eace2a8 Align Kafka's missingTopicsFatal default value
See gh-20917
5 years ago
Vedran Pavic fec386b574 Harmonize naming of Elasticsearch auto-configuration classes 5 years ago
Brian Clozel 3879a7505c Record cancelled client requests in WebClient
Prior to this commit, cancelled client requests (for example as a result
of a `timeout()` reactor operator would not be recorded by Micrometer.

This commit instruments the cancelled signal for outgoing client
requests and assigns a status `CLIENT_ERROR`.
The cancellation can be intentional (triggering a timeout and falling
back on a faster alternative) or considered as an error. The intent
cannot be derived from the signal itself so we're considering it as a
client error.

Closes gh-18444
5 years ago
Cicio Flaviu 7f1655e5cb Add package-info to buildpack.platform.docker.ssl
See gh-20913
5 years ago
dreis2211 43936d66d3 Improve Binder performance slightly
See gh-20755
5 years ago
Brian Clozel 0611b6d3eb Fix startup failure when WebFlux auto-config is skipped
Prior to this commit, the `HttpHandlerAutoConfiguration` would rely on
the `WebFluxProperties` bean being present - this is most of the time
true when the appplication is using the WebFlux auto-configuration.

If the application is overriding the WebFlux auto-configuration and
providing its own setup, the properties bean is not present and we
should skip its usage.

Fixes gh-20891
5 years ago
dreis2211 d4575bc122 Fix unused parameters
See gh-20911
5 years ago
Stephane Nicoll 62ebe9c006 Adapt to Wavefront SDK 2.1
Closes gh-20854
5 years ago
Stephane Nicoll 9752cd4b8c Merge branch '2.2.x'
Closes gh-20909
5 years ago
A Vaz 267f6481f8 Fix typo
See gh-20907
5 years ago
Stephane Nicoll d571fb311f Add support for NewRelicClientProvider
Closes gh-20908
5 years ago
Madhura Bhave 1342e4970a Provide a condition for detecting war deployments
Closes gh-19421
5 years ago
Andy Wilkinson 8e695b0cc5 Configure OncePerRequestFilters with all dispatcher types by default
Closes gh-18953
5 years ago
Andy Wilkinson 2d360ef155 Merge branch '2.2.x'
Closes gh-20897
5 years ago
Andy Wilkinson 7e1807c01b Polish "Update endpoint enablement description to describe availability"
See gh-20799
5 years ago
Eric Opoku 399c85a5ef Update endpoint enablement description to describe availability
See gh-20799
5 years ago
Stephane Nicoll 8cc61242e2 Use Micrometer's getDefaultSenderBuilder
This commit removes the duplication added temporarily in Spring Boot to
initialize a default WavefrontSender builder.

This commit also disables a test is failing at the moment, see
https://github.com/micrometer-metrics/micrometer/issues/1964

See gh-20854
5 years ago
Stephane Nicoll 1c70b6735a Remove plugin management for exec-maven-plugin
Closes gh-20883
5 years ago
dreis2211 ae15a3d162 Polish LayersIndex
See gh-20874
5 years ago
Scott Frederick ba4eec87e4 Continue processing properties files on error
Prior to this commit, processing of multiple properties files
discovered using a wildcard pattern would stop on any error
encountered while processing a file or when an empty properties file
was found, causing subsequent files from the pattern to be ignored.

This commit changes the behavior such that subsequent files are
processed on error or on an empty file.

Fixes gh-20873
5 years ago
Madhura Bhave 62c09d607a Polish 5 years ago
Phillip Webb ed2d90248c Rename `singleSignOn` property to `singlesignon`
Rename the SAML `singleSignOn` nested property to `singleSignOn` so
that we don't get problems when using uppercase environment variable
names.

See gh-20584
5 years ago
Phillip Webb 3ca896e63f Polish 5 years ago
Phillip Webb 1640add8be Don't use Assert class from loader
Remove the use of `Assert` since it's unavailable that early.
5 years ago
Phillip Webb d9fb4dd477 Don't use monospacing in documentation headings
Closes gh-20875
5 years ago
Scott Frederick e17d4be484 Polish plugin documentation headings 5 years ago
Scott Frederick a64e26fc44 Polish plugin documentation headings 5 years ago
Stephane Nicoll dc94a87694 Merge branch '2.2.x'
Closes gh-20869
5 years ago
Stephane Nicoll cb66e4a206 Update copyright year
See gh-20832
5 years ago
dreis2211 235e693906 Fix WebappLoader constructor deprecations
See gh-20832
5 years ago
Stephane Nicoll 885ad1b720 Merge branch '2.2.x'
Closes gh-20868
5 years ago
dreis2211 2f93196fbb Polish ConditionMessage#because()
See gh-20847
5 years ago
Phillip Webb 729fc9dd6d Ensure streams are always closed
Update `AbstractJarWriter` to ensure that streams are always closed,
even if entries are not written.
5 years ago
Phillip Webb 1abbfbbfcd Attempt to fix failing Windows test 5 years ago
Phillip Webb ffd499fdc7 Attempt to fix failing Windows test 5 years ago
Phillip Webb d3c06ee0cf Remove windows line endings when parsing index 5 years ago
Phillip Webb 4b1346f4bf Polish 5 years ago
Phillip Webb 5b374e833b Cleanup paths to fix tests running on Windows 5 years ago
Phillip Webb baa728c85e Cleanup paths to fix tests running on Windows 5 years ago
Phillip Webb 5e028599f0 Change PDF rename logic
Rework the rename logic used to include the reference PDF to try
and workaround the following local build error:

	Encountered duplicate path "reference/pdf/spring-boot-reference.pdf"
	during copy operation configured with DuplicatesStrategy.FAIL

See gh-20829
5 years ago
Phillip Webb b50e8eb3aa Fix package tangle in Gradle plugin
Relocate `VersionExtractor` to fix a package tangle.
5 years ago
Phillip Webb 6e7b473fef Polish asciidoc formatting and use sentence case 5 years ago
Phillip Webb 951a3e78f9 Test layer index can contain filenames with spaces
Add tests to ensure that the layer index can support filenames that
contain spaces.

Closes gh-20827
5 years ago
Phillip Webb 464c15e52c Ensure empty layers are written to the index file
Update the `LayersIndex` class to ensure that layers that do not contain
content are still written.

Closes gh-20858
5 years ago
Phillip Webb ef9611e30e Document executable-jar index files
Update the executable jar appendix to include details of the index
files.

Closes gh-20859
5 years ago
Phillip Webb df58b9baa2 Use YAML compatible classpath.idx format
Update the `classpath.idx` format to align with `layers.idx` and allow
third-parties can parse it as YAML

Closes gh-20861
5 years ago
Phillip Webb 65672a1150 Use a more compact layers.idx format
Update the `layers.idx` format so that it is more compact and can be
parsed by third-parties as YAML.

Closes gh-20860
5 years ago
Scott Frederick 35ff711dfe Document builder configuration for HTTP proxy
This commit adds examples for configuring the default builder to use
an HTTP/HTTPS proxy when building OCI images using the Maven or Gradle
plugin.

Fixes gh-19984
5 years ago
Scott Frederick c05d7f844d Remove duplication in documentation index files
This commit combines index adoc files for single-page HTML and PDF
into one file to remove duplication. It also renames index files to
reflect the separation between source format and generated output
format.

Finishes gh-20829
5 years ago
Madhura Bhave c4b0bd1698 Merge pull request #20851 from olegz
* pr/20851:
  Change call to createClassLoader(URL) from 'super' to 'this'

Closes gh-20851
5 years ago
Oleg Zhurakousky 9f75f30856 Change call to createClassLoader(URL) from 'super' to 'this'
ExecutableArchiveLauncher.createClassLoader(Iterator) calls
createClassLoader(URL) method with 'super'. This means overriding
createClassLoader(URL) is not possible without also overriding
createClassLoader(Iterator). The switch to 'this' enables that.

See gh-20851
5 years ago
Stephane Nicoll 6764e5e2d0 Export metrics to Wavefront using WavefrontSender
This commit upgrades the Wavefront metrics export auto-configuration to
provide a `WavefrontSender` if necessary and use that to export metrics
rather than the http client Micrometer used previously.

As a result, the "read-timeout" and "connect-timeout" properties are no
longer honoured.

Closes gh-20810
5 years ago
Stephane Nicoll 9543ab1ca9 Update default value for Wavefront's step size
See gh-20833
5 years ago
Stephane Nicoll a8c026a558 Expose Prometheus#histogramFlavor property
Closes gh-20853
5 years ago
Stephane Nicoll f64f5a0f55 Expose Elastic's pipeline and indexDateSeparator properties
Closes gh-20852
5 years ago
Stephane Nicoll f293f6ad9b Expose AppOptics's floorTimes property
Closes gh-20850
5 years ago
Stephane Nicoll 888a81beba Migrate Kafka metrics to KafkaClientMetrics
Closes gh-20838
5 years ago
Stephane Nicoll 333ac279c3 Stop auto-configuring a StatsdMetrics bean
StatsD no longer publishes metrics about itself and StatsDMetrics is
deprecated as a result. This commit removes the auto-configuration of
it.

Closes gh-20836
5 years ago
Stephane Nicoll 30201a40e0 Update SLA boundaries to use double
See https://github.com/micrometer-metrics/micrometer/pull/1909

Closes gh-20837
5 years ago
Stephane Nicoll 4813606b70 Expose Graphite's graphiteTagsEnabled property
This commit exposes an additional property for Graphite that allows to
restore the previous default behaviour with regards to tags, i.e.
prefixing the ones defined by the "tagsAsPrefix" property.

Close gh-20834
5 years ago
Stephane Nicoll 08533c79e0 Update default value for Datadog's default uri
See gh-20833
5 years ago
Stephane Nicoll 4b81548502 Start building against Micrometer 1.5.0 snapshots
See gh-20833
5 years ago
Georgios Voulgarakis da13751dbf Add reference to quickfixj spring boot starter
See gh-20819
5 years ago
Stephane Nicoll 7ca6359b43 Remove PushRegistry's numThreads deprecated property
See gh-20835
5 years ago
Stephane Nicoll a23700f323 Merge branch '2.2.x'
Closes gh-20845
5 years ago
Stephane Nicoll 1960c90d5f Deprecated PushRegistry's numThreads property
This property is a left-over and was never used in Micrometer so this
commit deprecates its use so that it can be removed in the next feature
release.

Closes gh-20835
5 years ago
Stephane Nicoll 72f2afe1f3 Merge branch '2.2.x'
Closes gh-20844
5 years ago
Stephane Nicoll 4641794fb5 Fix AtlasProperties hierarchy
This commit fixes the AtlasProperties hierarchy so that it no longer is
a StepRegistryProperties. The AtlasConfig on the Micrometer side of
things does not share the common config hierarchy either and some
properties have different default and lifecycle.

Closes gh-20843
5 years ago
Scott Frederick bb568c5bff Consolidate Maven plugin documentation in plugin reference
This commit moves Maven plugin content from several sections in the
main Spring Boot reference documentation to the plugin-specific
documentation.

Fixes gh-19165
5 years ago
Scott Frederick c119dd2450 Rename plugin PDF reference doc files
This commit renames the PDF documentation files generated for the
build plugins when the distribution archive is created.

See gh-20829
5 years ago
Madhura Bhave f40444e212 Fix typo 5 years ago
Stephane Nicoll b7ac83a830 Fix typo 5 years ago
Stephane Nicoll 1df8b5886c Add reference to r2dbc database initialization section
Closes gh-20524
5 years ago
Stephane Nicoll 5c69534827 Remove direct dependency on Kafka's IsolationLevel
Closes gh-20811
5 years ago
Stephane Nicoll f4e6d7c1cf Fix links to Maven Plugin's documentation in reference guide
Closes gh-20818
5 years ago
Andy Wilkinson 34e602652c Polish new layered jar support 5 years ago
Stephane Nicoll 3e936dd735 Polish 5 years ago
Stephane Nicoll c88ef6215f Polish 5 years ago
Stephane Nicoll f963180ab8 Polish 5 years ago
Phillip Webb 12bc890e75 Update Maven and Gradle layer customization docs
Update the Maven and Gradle documentation following the refined
layer customization changes.

See gh-20526
5 years ago
Madhura Bhave 0e1394ef30 Update reference documentation for layer changes
Update the reference documentation following the jar format changes.

See gh-20813
5 years ago
Madhura Bhave d61a79d90b Support flat jar layering with layertools
Update layertools to support the flat jar format. Layers are now
determined by reading the `layers.idx` file.

Closes gh-20813
5 years ago
Andy Wilkinson bfa04e6574 Support flat jar layering with Gradle
Update the Gralde plugin so that layered jars now use the regular "flat"
format. The layers.idx file now describes which layer each file should
be placed.

See gh-20813

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
5 years ago
Madhura Bhave 4e3cdf936f Support flat jar layering with Maven
Update the Maven plugin so that layered jars now use the regular "flat"
format. The layers.idx file now describes which layer each file should
be placed.

See gh-20813

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
5 years ago
Phillip Webb 3f806aa513 Create a new layer for loader classes
Create a dedicated layer that is used to hold the launcher support
classes. The layer sits between `dependencies` and
`snapshot-dependencies` so that the layer is sensible for both
SNAPSHOT and RELEASE versions of Spring Boot

Closes gh-20529
5 years ago
Phillip Webb 7bc7d86ad4 Refine layer customization for Maven and Gradle
Simplify layer customization logic for both Maven and Gradle and
refactor some internals of the Gradle plugin.

Both Maven and Gradle now use a simpler customization format that
consists of `application`, `dependencies` and `layer order` sections.
The `application`, `dependencies` configurations support one or more
`into` blocks that are used to select content for a specific layer.

Closes gh-20526
5 years ago
Andy Wilkinson 14718f3e8a Allow layertools to work without spring-boot jar
Update `spring-boot-jarmode-layertools` so that it no longer required
a `spring-boot` jar to run.

Closes gh-20815
5 years ago
Phillip Webb 01c7623f5d Polish 5 years ago
Madhura Bhave 577bc1ce88 Fix formatting 5 years ago
Madhura Bhave c2e95ee7ee Support both JWT and Opaque token configuration for resource server
Closes gh-19426
5 years ago
Madhura Bhave 8659102650 Add configuration options for SAML authentication requests
Closes gh-20584
5 years ago
Scott Frederick 6a0d620860 Polish javadoc 5 years ago
Brian Clozel ffc2cff8de Override CloudPlatform auto-detection with configuration property
This commit adds the new "`spring.main.cloud-platform`" configuration
property. This allows applications to override the auto-detection and
force a specific Cloud Platform. This is useful for testing behavior on
a local machine or force the detection of a particular platform.

This commit also adds a new `CloudPlatform.NONE` value that allows
applications to disable the auto-detection of the Cloud Platform, thus
avoiding issues with false positives.

Closes gh-20553
5 years ago
Stephane Nicoll f4c68dbc98 Do not set server.port=-1 for non embedded tests
Closes gh-16998
5 years ago
Brian Clozel bbbf8c527d Polish
See gh-20205
5 years ago
wonwoo a7e57e0909 Configure codec buffer size in ES Reactive Rest client
This commit adds a new configuration property
`"spring.data.elasticsearch.client.reactive.max-in-memory-size"`
which configures the maximum amount of memory buffered by the
`WebClient` used by the Reactive ElasticSearch client.

See gh-20205
5 years ago
Stephane Nicoll 2815e6ee2d Remove deprecated Humio's repository property
Closes gh-20808
5 years ago
Andy Wilkinson 1f8ea54c80 Upgrade to Spring Integration 5.3.0.M4
Closes gh-20807
5 years ago
Scott Frederick cc2852ce79 Polish 5 years ago
Scott Frederick a01c8452cb Support CNB builder platform API 0.3
This commit adds support for Cloud Native Buildpacks builder platform
API 0.3, which is the latest platform API available currently. Support
for platform API 0.1 has been removed, adopting the policy of the pack
CLI to support the current platform API version and one version prior.

Fixes gh-20757
5 years ago
Scott Frederick bb9e37e119 Use platform API builder image tags
CNB builder images are now being tagged in a manner that indicates
the version of the platform API implemented. This allows Spring Boot
to default to a builder tag that guarantees API compatibility while
allowing for updates to bundled buildpacks.

Fixes gh-20171
5 years ago
Phillip Webb 4dad56a491 Restructure and polish docker code
Restructure and polish docker code to fix a package tangle and
provide better separation of concerns.
5 years ago
Phillip Webb 5d8d0bb159 Update copyright year of changed files 5 years ago
Phillip Webb 9795262dc1 Polish 5 years ago
Andy Wilkinson bcac1e9184 Upgrade to Spring Kafka 2.4.5.RELEASE
Closes gh-20797
5 years ago
Stephane Nicoll b9cb1c810b Merge pull request #20729 from gurbuzali
* pr/20729:
  Polish "Disable Hazelcast auto-configuration when Jet is present"
  Disable Hazelcast auto-configuration when Jet is present

Closes gh-20729
5 years ago
Stephane Nicoll 617786e06f Polish "Disable Hazelcast auto-configuration when Jet is present"
See gh-20729
5 years ago
Andy Wilkinson e0b3916971 Upgrade to Spring Batch 4.2.2.RELEASE
Closes gh-20792
5 years ago
Ali Gurbuz 002a7c6e87 Disable Hazelcast auto-configuration when Jet is present
See gh-20729
5 years ago
Stephane Nicoll dfac3a282b Add configuration to enable Redis Cluster topology refresh
This commit adds two options to enable a refresh of the cluster
topology using Lettuce.

Closes gh-15630
5 years ago
Andy Wilkinson d8cead5457 Use accessor for in-progress async count added in Tomcat 9.0.33
Closes gh-20440
5 years ago
Andy Wilkinson 281f4d4ceb Clear system property set by log file registration
Closes gh-20790
5 years ago
Andy Wilkinson 5c879b2812 Upgrade to Tomcat 9.0.33
Closes gh-20789
5 years ago
Andy Wilkinson 375879404d Upgrade to Spring Security 5.3.1.RELEASE
Closes gh-20788
5 years ago
Andy Wilkinson 31831b3440 Upgrade to SendGrid 4.4.6
Closes gh-20787
5 years ago
Andy Wilkinson 0ba4157012 Upgrade to RxJava2 2.2.19
Closes gh-20786
5 years ago
Andy Wilkinson dc4b19718e Upgrade to QueryDSL 4.3.1
Closes gh-20785
5 years ago
Andy Wilkinson 02352475a6 Upgrade to Postgresql 42.2.12
Closes gh-20784
5 years ago
Andy Wilkinson cd6054bcf1 Upgrade to Netty tcNative 2.0.30.Final
Closes gh-20783
5 years ago
Andy Wilkinson 5d039810e6 Upgrade to Netty 4.1.48.Final
Closes gh-20782
5 years ago
Andy Wilkinson 47dbd73a74 Upgrade to Neo4j OGM 3.2.10
Closes gh-20781
5 years ago
Andy Wilkinson 095cbf7a41 Upgrade to MongoDB 4.0.1
Closes gh-20780
5 years ago
Andy Wilkinson 9ae944474d Upgrade to Mockito 3.3.3
Closes gh-20779
5 years ago
Andy Wilkinson eeb1090e21 Upgrade to MIMEPull 1.9.13
Closes gh-20778
5 years ago
Andy Wilkinson 4cfdcd52e8 Upgrade to Micrometer 1.3.7
Closes gh-20777
5 years ago
Andy Wilkinson f88080bead Upgrade to Maven Javadoc Plugin 3.2.0
Closes gh-20776
5 years ago
Andy Wilkinson 7f6cd6eef4 Upgrade to MariaDB 2.6.0
Closes gh-20775
5 years ago
Andy Wilkinson b61e0c223b Upgrade to Liquibase 3.8.8
Closes gh-20774
5 years ago
Andy Wilkinson 797cf62bb7 Upgrade to Kotlin Coroutines 1.3.5
Closes gh-20773
5 years ago
Andy Wilkinson e384b3d00f Upgrade to JUnit Jupiter 5.6.1
Closes gh-20772
5 years ago
Andy Wilkinson 07df272243 Upgrade to Johnzon 1.2.4
Closes gh-20771
5 years ago
Andy Wilkinson 6d7b63364b Upgrade to Janino 3.1.2
Closes gh-20770
5 years ago
Andy Wilkinson a7bb340f1c Upgrade to Infinispan 10.1.5.Final
Closes gh-20769
5 years ago
Andy Wilkinson 1aa6b38306 Upgrade to Hibernate 5.4.13.Final
Closes gh-20768
5 years ago
Andy Wilkinson 6bb39ffdfa Upgrade to Flyway 6.3.2
Closes gh-20767
5 years ago
Andy Wilkinson 2fdc9dddb5 Upgrade to Elasticsearch 7.6.2
Closes gh-20766
5 years ago
Andy Wilkinson e2e5dfad49 Upgrade to Commons Lang3 3.10
Closes gh-20765
5 years ago
Andy Wilkinson cc83fa3bd8 Upgrade to Cassandra Driver 4.5.1
Closes gh-20764
5 years ago
Andy Wilkinson c4c7a67b63 Upgrade to Byte Buddy 1.10.9
Closes gh-20763
5 years ago
Andy Wilkinson 972f474fc4 Upgrade to AppEngine SDK 1.9.79
Closes gh-20762
5 years ago
Andy Wilkinson e9b944804f Upgrade to ActiveMQ 5.15.12
Closes gh-20761
5 years ago
Andy Wilkinson 84e16d55ea Raise the minimum supported version of Gradle 6 to 6.3
Closes gh-20532
5 years ago
Scott Frederick ac949d7851 Document remote Docker configuration
This commit adds documentation for the configuration required to
use a remote Docker daemon with the `build-image` Maven goal or the
`bootBuildImage` Gradle task.

See gh-20538
5 years ago
Andy Wilkinson b0837d398c Upgrade to Spring HATEOAS 1.1.0.M3
Closes gh-20751
5 years ago
Andy Wilkinson 33e6ab7a68 Upgrade to Spring Session Dragonfruit-RC2
Closes gh-20490
5 years ago
Andy Wilkinson b779846688 Upgrade to Spring Data Neumann-RC1
Closes gh-20748
5 years ago
Andy Wilkinson 6d7c3da1cf Polish "Make it clear to which type the DataSource properties are bound"
See gh-20727
5 years ago
Param 004ea51b05 Make it clear to which type the DataSource properties are bound
See gh-20727
5 years ago
Andy Wilkinson f238812cea Polish "Improve handling of non-existent path in disk space health check"
See gh-20580
5 years ago
Andreas Born db565cfc3a Improve handling of non-existent path in disk space health check
See gh-20580
5 years ago
Stephane Nicoll 960ab159e4 Document how to initialize a database with R2DBC
This commit adds a section to the reference guide on how to initialize
a database using R2DBC. 2 smoke tests are also added to validate this
behaviour with Flyway and Liquibase.

Closes gh-20742
5 years ago
Stephane Nicoll 12123d41e5 Make sure @DataR2dbcTest invokes database migration if necessary
Closes gh-20739
5 years ago
Stephane Nicoll 0616ecfa5c Make sure Liquibase works with only spring-jdbc on the classpath
This commit improves the Liquibase auto-configuration to only rely on
spring-jdbc when a `DataSource` should be created on-the-fly for the
purpose of its initialization.

Previously, a connection pool implementation must be added as well, now
we're fallbacking on `SimpleDriverDataSource` if necessary. This
improves the database initialization use case with R2DBC.

Closes gh-20715
5 years ago
Andy Wilkinson c282f76633 Merge branch '2.2.x'
Closes gh-20741
5 years ago
dreis2211 798e21fd3e Polish GroovyTemplateAutoConfiguration
See gh-20708
5 years ago
Andy Wilkinson 56af3534f0 Merge branch '2.2.x'
Closes gh-20740
5 years ago
Andy Wilkinson ce95fd6825 Polish "Use @DynamicPropertySource for Neo4J and Redis data tests"
See gh-20676
5 years ago
dreis2211 d84422a41c Use @DynamicPropertySource for Neo4J and Redis data tests
See gh-20676
5 years ago
Scott Frederick ed6e54218d Support remote Docker daemon for building images
Prior to this commit, the build plugin goal/task for building images
required a locally running Docker daemon that was accessed via a
non-networked socket or pipe.

This commit adds support for remote Docker daemons at a location
specified by the environment variable `DOCKER_HOST`. Additional
environment variables `DOCKER_TLS_VERIFY` and `DOCKER_CERT_PATH`
are recognized for configuring a secure TLS connection to the daemon.

Fixes gh-20538
5 years ago
Stephane Nicoll fd05bc2a4a Expose MongoDB's replica set name
Closes gh-20391
5 years ago
Stephane Nicoll 722d37468b Rationalize RabbitProperties
Closes gh-18830
5 years ago
Stephane Nicoll ef592eaed8 Merge branch '2.2.x'
Closes gh-20726
5 years ago
Stephane Nicoll ac56db703e Merge branch '2.1.x' into 2.2.x
Closes gh-20725
5 years ago
Stephane Nicoll 88b7b78344 Make sure that cassandra health check reports version
Closes gh-20719
5 years ago
Stephane Nicoll a7e8829560 Polish 5 years ago
Stephane Nicoll 5ad4de184d Merge branch '2.2.x'
Closes gh-20718
5 years ago
Stephane Nicoll 05f10819c4 Merge branch '2.1.x' into 2.2.x
Closes gh-20717
5 years ago
Stephane Nicoll c9e32aaa47 Use LOCAL_ONE when querying system.local
This commit is a follow-up of gh-20709 to apply the same consistency
level to the Cassandra reactive health indicator.

Closes gh-20713
5 years ago
Stephane Nicoll 876371e0fd Merge branch '2.2.x'
Closes gh-20712
5 years ago
Stephane Nicoll a9a6df2ed4 Merge branch '2.1.x' into 2.2.x
Closes gh-20711
5 years ago
Stephane Nicoll 63be1678de Polish "Use LOCAL_ONE when querying system.local"
See gh-20709
5 years ago
Alexandre Dutra 851f631eac Use LOCAL_ONE when querying system.local
The system keyspace has a replication factor of 1 and is local to each
node; it is therefore recommended to query system.local with a
consistency level of ONE or LOCAL_ONE.

Stronger consistency levels may result in an Unavailable error, but this
does not mean that the node is down.

See gh-20709
5 years ago
Stephane Nicoll 49ab5de91c Polish
See gh-20704
5 years ago
Stephane Nicoll 8154e672dd Polish
See gh-20704
5 years ago
dreis2211 674f1e77b5 Fix typos
See gh-20704
5 years ago
Stephane Nicoll 7a64b3f761 Restore Cassandra port option
This commit restores the port option that was removed in an earlier
milestone. Contact points that do not define a port already are
automatically transformed to include the one configured, with a default
matching Cassandra's default port.

This makes upgrades easier in the case a cluster uses consistent ports
everywhere.

Closes gh-19672
5 years ago
Stephane Nicoll a4b3d9a800 Upgrade to r2dbc Arabba-SR3
Closes gh-20674
5 years ago
Stephane Nicoll 443abd414b Merge branch '2.2.x'
Closes gh-20699
5 years ago
Stephane Nicoll 5d56e24da2 Document that Java 14 is a supported version
Closes gh-20689
5 years ago
Madhura Bhave b66ca0016a Merge branch '2.2.x' 5 years ago
Madhura Bhave 042a02e0da Update copyright of changed files 5 years ago
Madhura Bhave 3ad1aa7b32 Merge branch '2.2.x'
Closes gh-20694
5 years ago
Anastasiia Losieva a55c3e4ab7 Use jws-algorithm property in ReactiveOAuth2ResourceServerJwkConfiguration
See gh-20681
5 years ago
Stephane Nicoll dfa3939f56 Merge branch '2.2.x' 5 years ago
Stephane Nicoll a234dff573 Remove check for deprecated configuration properties
See gh-20528
5 years ago
Stephane Nicoll ff15d136db Merge branch '2.2.x'
Closes gh-20687
5 years ago
Stephane Nicoll ab01c55d8e Deprecate use of path extensions for request mapping and content negotiation
Closes gh-20528
5 years ago
Andy Wilkinson 0c3be4dde5 Upgrade to Spring Integration 5.2.5.RELEASE
Closes gh-20672
5 years ago
Madhura Bhave ad164269e9 Update classpath index to use jar name instead of full path
See gh-20564
5 years ago
Stephane Nicoll 48f235c2cf Upgrade to Spring Kafka 2.3.7
Closes gh-20574
5 years ago
Stephane Nicoll f218565e7c Upgrade to Mimepull 1.9.13
Closes gh-20675
5 years ago
Stephane Nicoll 1b3efb52df Upgrade to Spring Data Moore SR6
Closes gh-20573
5 years ago
Stephane Nicoll 6316d26754 Upgrade to Spring HATEOAS 1.0.4.RELEASE
Closes gh-20232
5 years ago
Stephane Nicoll b3517a0771 Merge branch '2.2.x'
Closes gh-20671
5 years ago
Stephane Nicoll 009361d38c Merge branch '2.1.x' into 2.2.x
Closes gh-20670
5 years ago
Stephane Nicoll 18353231a0 Do not fail if "spring.datasource.url" cannot be resolved
Previously, a condition checked the value of "spring.datasource.url" to
determine if an embedded database has to be created as a fallback. When
the value is set with an unresolved placeholder, this fails even if
the DataSource is going to created by another mean ultimately.

This commit makes a more conservative check by only checking the
presence of the property rather than its value.

Closes gh-20438
5 years ago
Stephane Nicoll 089c0471fa Test the Gradle Plugin against Gradle 6.3
Closes gh-20669
5 years ago
Brian Clozel 9eed719c44 Do not register shutdownHook for WAR deployments
The application context shutdownHook is not needed for WAR deployments,
and we should let the Servlet container handle the application lifecycle
here.

Closes gh-19398
5 years ago
Brian Clozel 87de8a5e15 Fix checkstyle issue 5 years ago
Brian Clozel cbe83f8db5 Make base path configurable for WebFlux applications
This commit adds the `"spring.webflux.base-path"` configuration
property. Configuring this property will gather all `HttpHandlers` into
a single composite and prefix all requests with a shared base path.

Closes gh-10129
5 years ago
Stephane Nicoll 97bf3ecf1c Polish "Migrate off deprecated Spring Data Cassandra API"
See gh-20662
5 years ago
Mark Paluch 8355d30456 Migrate off deprecated Spring Data Cassandra API
Configure UserTypeResolver and CodecRegistry on
MappingCassandraConverter. Configure on CassandraMappingContext only the
simple type holder instead of custom conversions.

See gh-20662
5 years ago
Brian Clozel eb70fd952f Turn LivenessState and ReadinessState into enums
Prior to this commit, `LivenessState` and `ReadinessState` were
immutable classes. This was done in order to have additional behavior
and information in those classes.

Because the current implementation doesn't need this, this commit turns
those classes into simple enums.
Additional state and information can be added to the
`*StateChangedEvent` classes.

See gh-19593
5 years ago
Stephane Nicoll 6aa3461611 Version layers configuration xsd
This commit provides a versioned xsd for the layers configuration of the
Maven plugin. The version starts at `2.3` to match with the Spring Boot
feature release in which this was introduced.

Closes gh-20663
5 years ago
Stephane Nicoll 5c6bc3729e Upgrade to Spring Framework 5.2.5
Closes gh-20571
5 years ago
Stephane Nicoll 44a8ff893d Upgrade to Spring Framework 5.2.5
Closes gh-20571
5 years ago
Stephane Nicoll 16d2db68f9 Add dependency management for Jakarta Xml Soap 1.4.2
Closes gh-20661
5 years ago
Dave Syer 5022ec500a Extra detail for Kubernetes probes
Provides a few more concrete details about how probes and Kubernetes
behave, so users can make more informed decisions.

See gh-19593
Closes gh-20660
5 years ago
Stephane Nicoll b53687535d Upgrade to Maven Dependency Plugin 3.1.2
Closes gh-20658
5 years ago
Stephane Nicoll 9e87b54f09 Upgrade to Xmlunit2 2.6.4
Closes gh-20657
5 years ago
Stephane Nicoll 0bb564dff9 Upgrade to Spring Session Bom Corn-SR2
Closes gh-20656
5 years ago
Stephane Nicoll d87726a953 Upgrade to Postgresql 42.2.11
Closes gh-20655
5 years ago
Stephane Nicoll c99ef5df76 Upgrade to Neo4j Ogm 3.2.10
Closes gh-20654
5 years ago
Stephane Nicoll 64ca69305f Upgrade to Liquibase 3.8.8
Closes gh-20653
5 years ago
Stephane Nicoll 67d2b8baa9 Upgrade to Kotlin Coroutines 1.3.5
Closes gh-20652
5 years ago
Stephane Nicoll 059e1cdd13 Upgrade to Kotlin 1.3.71
Closes gh-20651
5 years ago
Stephane Nicoll 468ddee339 Upgrade to Freemarker 2.3.30
Closes gh-20650
5 years ago
Stephane Nicoll e3bdcae09d Upgrade to Elasticsearch 6.8.7
Closes gh-20649
5 years ago
Stephane Nicoll ef9d64c1fb Upgrade to Jetty 9.4.27.v20200227
Closes gh-20648
5 years ago
Stephane Nicoll e1e8528867 Upgrade to Janino 3.1.2
Closes gh-20647
5 years ago
Stephane Nicoll bd96698ca3 Upgrade to Tomcat 9.0.33
Closes gh-20646
5 years ago
Stephane Nicoll 47e1e273c1 Upgrade to Httpclient 4.5.12
Closes gh-20645
5 years ago
Stephane Nicoll 46ffb4fd88 Upgrade to Activemq 5.15.12
Closes gh-20644
5 years ago
Stephane Nicoll f244e12ec2 Add dependency management for Jakarta Xml Soap 1.4.2
Closes gh-20659
5 years ago
dreis2211 25f48cb289 Fix typos in HealthEndpointGroupConfigurer
See gh-20628
5 years ago
Stephane Nicoll 7b215e6998 Upgrade to Jakarta Xml Ws 2.3.3
Closes gh-20643
5 years ago
Stephane Nicoll ecb1bdcc45 Upgrade to Jakarta Xml Bind 2.3.3
Closes gh-20642
5 years ago
Stephane Nicoll 5294c46380 Upgrade to Undertow 2.0.30.Final
Closes gh-20641
5 years ago
Stephane Nicoll 0766c2c591 Upgrade to Rxjava2 2.2.19
Closes gh-20640
5 years ago
Stephane Nicoll 3fe6f409b7 Upgrade to Netty Tcnative 2.0.30.Final
Closes gh-20639
5 years ago
Stephane Nicoll 5d1e303c0b Upgrade to Netty 4.1.48.Final
Closes gh-20638
5 years ago
Stephane Nicoll cde39f4676 Upgrade to Micrometer 1.3.6
Closes gh-20637
5 years ago
Stephane Nicoll 278b206af5 Upgrade to Dropwizard Metrics 4.1.5
Closes gh-20636
5 years ago
Stephane Nicoll 262f1239db Upgrade to Jakarta Mail 1.6.5
Closes gh-20635
5 years ago
Stephane Nicoll 2ec2416357 Upgrade to Sendgrid 4.4.6
Closes gh-20634
5 years ago
Stephane Nicoll fcde01cc21 Upgrade to Appengine Sdk 1.9.79
Closes gh-20633
5 years ago
Stephane Nicoll 1ffdf8a194 Upgrade to Jackson 2.10.3
Closes gh-20632
5 years ago
Stephane Nicoll 89d8fe6717 Upgrade to Couchbase Client 2.7.13
Closes gh-20631
5 years ago
dreis2211 f95e9543dc Fix typos in packaging docs
See gh-20630
5 years ago
Phillip Webb 0717de723f Polish 5 years ago
Phillip Webb 9a33a723fe Update copyright year of changed files 5 years ago
Phillip Webb ce1ae11c26 Merge branch '2.2.x' 5 years ago
Phillip Webb 16b5ea3414 Update copyright year of changed files 5 years ago
Brian Clozel 4be64e8f9c Add "management.health.probes.enabled" config property
Prior to this commit, we were relying on the
`"spring.main.cloud-platform"` property for overriding cloud platform
detection and enabling liveness and readiness probes. Changes made in
gh-20553 have now been reverted.

This commit adds the `"management.health.probes.enabled"` configuration
property. The auto-configuration now enables the HTTP Probes and
`HealthIndicator` if this property is enabled, or if the Kubernetes
cloud platform is detected.

This property is `false` by default for now, since enabling this for all
Spring Boot applications would be a breaking change. In this case, the
global `"/actuator/health"` endpoint could report `OUT_OF_SERVICE`
during startup time because the application now reports the readiness as
well.

See gh-19593
5 years ago
Brian Clozel 05db46951d Revert "Override CloudPlatform auto-detection with property"
This reverts commit 4b7ed5efef.

See gh-20553
5 years ago
Brian Clozel 3cc0ab1583 Polish reference docs on Kubernetes Probes
See gh-19593
5 years ago
Madhura Bhave 7444306d0b Polish docs 5 years ago
Madhura Bhave a06f4f21e3 Combine application and resources layers into a single layer
Closes gh-20562
5 years ago
Madhura Bhave 952e529787 Rename "classes" to "application" in custom layer configuration
Closes gh-20539
5 years ago
Stephane Nicoll 29c89f3c27 Upgrade to Reactor Dysprosium-SR6
Closes gh-20570
5 years ago
Stephane Nicoll 8d9c9126b1 Upgrade to Reactor Dysprosium-SR6
Closes gh-20569
5 years ago
Stephane Nicoll 9a5ffb7e0c Upgrade to Reactor Californium SR17
Closes gh-20624
5 years ago
Stephane Nicoll 8c9711ab9a Merge branch '2.2.x'
Closes gh-20622
5 years ago
Stephane Nicoll bf15276af1 Fix import in constructor binding example
Closes gh-20378
5 years ago
Stephane Nicoll 1a9065f46f Merge branch '2.2.x'
Closes gh-20621
5 years ago
Stephane Nicoll 8f265f8d57 Polish "Fix @FlywayDataSource with multiple data sources"
See gh-20617
5 years ago
Shimbo Takaaki 2410d6bbd1 Fix @FlywayDataSource with multiple data sources
See gh-20617
5 years ago
Stephane Nicoll 34b71561d3 Merge branch '2.2.x'
Closes gh-20619
5 years ago
Stephane Nicoll 7be3db2d4d Merge branch '2.1.x' into 2.2.x
Closes gh-20618
5 years ago
Stephane Nicoll bcce6f9f07 Document that Jackson is a required dependency of the Actuator
Closes gh-19564
5 years ago
Stephane Nicoll ec8d2c5843 Merge branch '2.2.x'
Closes gh-20616
5 years ago
Stephane Nicoll 39b965e1fd Merge branch '2.1.x' into 2.2.x
Closes gh-20615
5 years ago
Stephane Nicoll f5761bd508 Auto-configure listener container factory without consumer factory
Previously, the presence of a `ConsumerFactory` bean would make the
auto-configured one to back off, leading to a failure down the line if
no available instance matches the generics criterion. This commit
improves the auto-configuration to create a `ConsumerFactory<?,?>`
behind the scenes if none is available.

Closes gh-19221
5 years ago
Andy Wilkinson 4cdb968efa Utilise Reactor Netty's new graceful shutdown support
Closes gh-20613
5 years ago
Andy Wilkinson 6b47dd06e8 Start building against Reactor Dysprosium-SR6 snapshots
See gh-20570
5 years ago
Stephane Nicoll 3735771f9c Merge branch '2.2.x'
Closes gh-20612
5 years ago
Stephane Nicoll 08a89b6288 Polish "Configure signature algorithm when using public key jwt decoder"
See gh-20523
5 years ago
Michael Kreis 69e33d6e62 Configure signature algorithm when using public key jwt decoder
See gh-20523
5 years ago
Johnny Lim cc18b91723 Fix "Building Docker Images" section level
See gh-20608
5 years ago
Stephane Nicoll 615ec8b6f5 Merge branch '2.2.x'
Closes gh-20607
5 years ago
dreis2211 6ff842441c Polish BindableTests
See gh-20604
5 years ago
dreis2211 ef9f1d39a3 Remove redundant MockitoAnnotations.initMocks()
See gh-20601
5 years ago
Stephane Nicoll 70aa788747 Merge branch '2.2.x'
Closes gh-20600
5 years ago
Stephane Nicoll 8593270b5b Only remove trailing slash from URI value
This commit upgrades the algorithm when trailing slash are to be
ignored. Previously a root URI (i.e. "/") would result to to empty
string which is an issue for monitoring system that requires tag values
to be non empty. If the URI is a single character, the trailing is not
applied and "/" is left as is.

Closes gh-20536
5 years ago
Brian Clozel 6b9f2cac17 Fix section title levels in reference docs 5 years ago
Brian Clozel ffdf9a422f Polish Liveness and Readiness support
This commit moves the core Liveness and Readiness support to its own
`availability` package. We've made this a core concept independent of
Kubernetes.

Spring Boot now produces `LivenessStateChanged` and
`ReadinessStateChanged` events as part of the typical application
lifecycle.

Liveness and Readiness Probes (`HealthIndicator` components and health
groups) are still configured only when deployed on Kubernetes.

This commit also improves the documentation around Probes best practices
and container lifecycle considerations.

See gh-19593
5 years ago
Andy Wilkinson 6cff66ac4d Merge branch '2.2.x'
Closes gh-20590
5 years ago
Andy Wilkinson 9e7ab46ecc Merge branch '2.1.x' into 2.2.x
Closes gh-20589
5 years ago
Jordan Simpson 0d9d0f8532 Link to correct factory in TomcatReactiveWebServerFactory's javadoc
See gh-20583
5 years ago
Scott Frederick 3f378e1276 Add command-line options for Gradle bootBuildImage parameters
This commit adds support for setting the image name and builder
parameters of the Gradle bootBuildImage task using command-line
options as an alternative to DSL configuration.

See gh-20520
5 years ago
Brian Clozel b30e5a60c5 Polish
See gh-19593
5 years ago
Stephane Nicoll 579a6ac254 Adapt tests for support for Java 14
See gh-20576
5 years ago
Andy Wilkinson f5e1bad900 Polish 5 years ago
Brian Clozel fd0b2f6695 Add Kubernetes Liveness and Readiness Probes support
Prior to this commit and as of Spring Boot 2.2.0, we would advise
developers to use the Actuator health groups to define custom "liveness"
and "readiness" groups and configure them with subsets of existing
health indicators.

This commit addresses several limitations with that approach.

First, `LivenessState` and `ReadinessState` are promoted to first class
concepts in Spring Boot applications. These states should not only based
on periodic health checks. Applications should be able to track changes
(and adapt their behavior) or update states (when an error happens).

The `ApplicationStateProvider` can be injected and used by applications
components to get the current application state. Components can also
track specific `ApplicationEvent` to be notified of changes, like
`ReadinessStateChangedEvent` and `LivenessStateChangedEvent`.
Components can also publish such events with an
`ApplicationEventPublisher`. Spring Boot will track startup event and
application context state to update the liveness and readiness state of
the application. This infrastructure is available in the
main spring-boot module.

If Spring Boot Actuator is on the classpath, additional
`HealthIndicator` will be contributed to the application:
`"LivenessProveHealthIndicator"` and `"ReadinessProbeHealthIndicator"`.
Also, "liveness" and "readiness" Health groups will be defined if
they're not configured already.

Closes gh-19593
5 years ago
Brian Clozel b680db6cd8 Add HealthEndpointGroupsRegistry and its Customizer
Prior to this commit, `HealthContributor` would be exposed under the
main `HealthEndpoint` and subgroups, `HealthEndpointGroups`. Groups are
driven by configuration properties and there was no way to contribute
programmatically new groups.

This commit introduces the `HealthEndpointGroupsRegistry` (a mutable
version of `HealthEndpointGroups`) and a
`HealthEndpointGroupsRegistryCustomizer`. This allows configurations to
add/remove groups during Actuator auto-configuration.

Closes gh-20554
5 years ago
Brian Clozel 4b7ed5efef Override CloudPlatform auto-detection with property
This commit adds a new `"spring.main.cloud-platform"` configuration
property that overrides the `CloudPlatform` detection.

This makes it easier to enable paltform-specific features when running
applications locally or when writing integration tests.

Closes gh-20553
5 years ago
Stephane Nicoll 0b7f198b54 Publish Maven plugin API
This commit enables javadoc generator for the Spring Boot Maven plugin.

This also harmonizes the structure of the documentation, with an `/api`
and a `/reference` root directories for the javadoc and the reference
guide respectively.

Closes gh-20127
5 years ago
Stephane Nicoll 58a45c53ac Upgrade to Groovy 2.5.10
Closes gh-20575
5 years ago
Stephane Nicoll 5893786cbb Polish "Add 'threads' configuration group for embedded containers"
See gh-19475
5 years ago
cbono 208f58104a Add 'threads' configuration group for embedded containers
See gh-19475
5 years ago
Stephane Nicoll bece0f1360 Start building against Spring Kafka 2.3.7 snapshots
See gh-20574
5 years ago
Stephane Nicoll 96cffb9dd3 Start building against Spring Data Moore SR6 snapshots
See gh-20573
5 years ago
Stephane Nicoll e940e751c1 Start building against Spring Framework 5.2.5 snapshots
See gh-20571
5 years ago
Stephane Nicoll 3966730e02 Start building against Reactor Dysprosium-SR6 snapshots
See gh-20569
5 years ago
dreis2211 7924dd62b0 Add security.protocol to KafkaProperties
See gh-20360
5 years ago
Scott Frederick e607c6842f Polish Gradle layer configuration DSL
This commit modifies the DSL for custom layer configuration in the
Gradle plugin to avoid duplication of terms that could be confusing.

Fixes gh-20563
5 years ago
Stephane Nicoll 0f5ca030db Polish "Add Java 14 CI"
See gh-20413
5 years ago
Stephane Nicoll 2e2f839bc8 Upgrade to Gradle 6.3 RC2
Closes gh-20558
5 years ago
Andy Wilkinson 9b817caff3 Revert "Update extract to write files to their original, unlayered location"
This reverts commit 9f3bc78f36.
5 years ago
Andy Wilkinson 0a17e2daf3 Merge branch '2.2.x'
Closes gh-20556
5 years ago
Lars Grefer c748f36856 Fix recommended task dependency configuration
`compileJava.dependsOn(processResources)` is not enough to ensure the
correct behavior. Using `dependsOn` only affects the execution order
(`processResources` before `compileJava`) but not the up-to-date check
of `compileJava`. After modifying
`META-INF/additional-spring-configuration-metadata.json`, the
`processResouces` task will considered out-of-date and will be
re-executed, but after that `compileJava` will still be considered
up-to-date which causes the changes not to be merged into
`META-INF/spring-configuration-metadata.json`

With this change the up-do-date check of `compileJava` is affected,
too. Therefore, it will correctly re-execute the
configuration-processor when
`META-INF/additional-spring-configuration-metadata.json` was changed.

See gh-20323
5 years ago
Andy Wilkinson 9f3bc78f36 Update extract to write files to their original, unlayered location 5 years ago
Scott Frederick 44f7508825 Fix BuildImageMojo javadoc. 5 years ago
Scott Frederick 08e96427de Add command-line properties for Maven build-image options
This commit adds support for setting the image name and builder
parameters of the Maven spring-boot:build-image goal using command-line
properties as an alternative to plugin configuration in pom.xml. Per
Maven conventions, a value in pom.xml configuration will override a
command-line property when both are provided.

Fixes gh-20520
5 years ago
Stephane Nicoll f470f27666 Merge branch '2.2.x'
Closes gh-20549
5 years ago
dreis2211 d9171d0afe Use @Configuration(proxyBeanMethods=false) wherever possible
See gh-20541
5 years ago
Stephane Nicoll 58eb0ba4d3 Add additional timeout settings
This commit expands the `spring.couchbase.env.timeouts` configuration
namespace with timeouts for disconnect, key-value operations with a
durability level, search, analytics and management.

Closes gh-19893

Co-authored-by: Michael Nitschinger <michael@nitschinger.at>
5 years ago
Stephane Nicoll abe43b2e83 Upgrade to Couchbase SDK v3
This commit upgrades to the Couchbase SDK v3 which brings the following
breaking changes:

* Bootstrap hosts have been replaced by a connection string and the
authentication is now mandatory.
* A `Bucket` is no longer auto-configured. The
`spring.couchbase.bucket.*` properties have been removed
* `ClusterInfo` no longer exists and has been replaced by a dedicated
API on `Cluster`.
* `CouchbaseEnvironment` no longer exist in favour of
`ClusterEnvironment`, the customizer has been renamed accordingly.
* The bootstrap-related properties have been removed. Users requiring
custom ports should supply the seed nodes and initialize a Cluster
themselves.
* The endpoints-related configuration has been consolidated in a
single IO configuration.

The Spring Data Couchbase provides an integration with the new SDK. This
leads to the following changes:

* A convenient `CouchbaseClientFactory` is auto-configured.
* Repositories are configured against a bucket and a scope. Those can
be set via configuration in `spring.data.couchbase.*`.
* The default consistency property has been removed in favour of a more
flexible annotation on the repository query methods instead. You can now
specify different query consistency on a per method basis.
* The `CacheManager` implementation is provided, as do other stores for
consistency so a dependency on `couchbase-spring-cache` is no longer
required.

See gh-19893

Co-authored-by: Michael Nitschinger <michael@nitschinger.at>
5 years ago
Stephane Nicoll e3899df22c Configure Spring Data Couchbase explicitly
This commit configures Spring Data Couchbase explicitly rather than
relying on the abstract configuration class. This has the advantage of
simplifying the auto-configuration and let it us proxy-free
configuration classes.

Spring Boot no longer uses or interacts with CouchbaseConfigurer. Users
relying on that to teach Spring Boot which components to use should
rely on `@Primary` flag instead in case of multiple beans of the same
type.

`CouchbaseConfiguration` is no longer public as extending from it is
no longer necessary. If the `CouchbaseEnvironment` has to be
customized, a `CouchbaseEnvironmentBuilderCustomizer` bean can be
registered to tune the auto-configured environment.

Closes gh-20533
5 years ago
Andy Wilkinson 4544785a4f Merge branch '2.2.x'
Closes gh-20544
5 years ago
Andy Wilkinson 566f79b086 Merge branch '2.1.x' into 2.2.x
Closes gh-20543
5 years ago
Andy Wilkinson b51c7386aa Fix detection of application home for paths containing spaces
Fixes gh-20531
5 years ago
Madhura Bhave fb8b531bfd Polish 5 years ago
Madhura Bhave 3e8ee2a296 Add missing package-info.json
Closes gh-20516
5 years ago
Madhura Bhave 84b2e8c308 Rename classes package to application
Closes gh-20526
5 years ago
Scott Frederick 3dea2201c4 Use Gradle's configuration avoidance API
Register Boot Gradle tasks instead of creating them so they can be
loaded lazily.

Closes gh-18881
5 years ago
Scott Frederick f2dadf5a87 Add support for customizing layers in Gradle
This commit adds configuration to the Spring Boot Gradle plugin that
allows the names and contents of layers to be customized in the build
configuration.

Fixes gh-20296
5 years ago
Andy Wilkinson c4a55a5fb4 Fail fast when attempting to repackage a reproducible war
Maven's war plugin does not support reproducible builds, resulting in
the entries in the war file not being written in a consistent order
from build to build.

Closes gh-20176
5 years ago
Andy Wilkinson ca202ad59f Support Maven's outputTimestamp when repackaging jars and wars
Closes gh-20176
5 years ago
dreis2211 5975e7bd8d Fix some deprecation warnings
See gh-20527
5 years ago
dreis2211 3e24df3beb Fix method order checkstyle issue
See gh-20525
5 years ago
Andy Wilkinson 0315724126 Cache endpoint responses on a per-principal basis
Previously, any HTTP request to an endpoint that included a principal
would bypass the cache. This prevented authenticated requests from
making use of the cache and its configurable time-to-live.

This commit updates the caching operation invoker to include the
principal, if any, in its cache key. As a result, requests that
include a principal will make use of the cache, potentially returning
the result of a previous invocation of the same endpoint by the same
principal.

Closes gh-19538
5 years ago
Andy Wilkinson ef9960c69f Allow additional tags to be contributed to WebMvc and WebFlux defaults
Closes gh-20175
5 years ago
Andy Wilkinson e7ece77a7c Upgrade to Undertow 2.0.30.Final
Closes gh-20514
5 years ago
Andy Wilkinson e28697eed8 Upgrade to Sun Mail 1.6.5
Closes gh-20513
5 years ago
Andy Wilkinson 38763a4e48 Upgrade to Maven Dependency Plugin 3.1.2
Closes gh-20512
5 years ago
Andy Wilkinson 2d9bfb9bdf Upgrade to Kafka 2.4.1
Closes gh-20511
5 years ago
Andy Wilkinson 6216dfbe5c Upgrade to Jakarta Mail 1.6.5
Closes gh-20510
5 years ago
Madhura Bhave e49e62df5c Add support for customizing layers in Maven
This commit adds an additional 'layers/configuration' property that can
be used to refer to a separate layers configuration file. This separate
file defines:

* The layers and their order of precedence,
* How libraries are handled using filters that match against the
coordinates of each library, and
* How classes are handled using filters that match against the location
of the entry

An XSD to validate the XML configuration file is available.

Closes gh-20295

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
5 years ago
Andy Wilkinson 896d2c8579 Upgrade to Spring Integration 5.3.0.M3
Closes gh-20489
5 years ago
Andy Wilkinson 5446858535 Upgrade to Spring Kafka 2.4.4.RELEASE
Closes gh-20469
5 years ago
Andy Wilkinson 77dbe999b9 Polish "Add clearChecksums to Liquibase auto-configuration"
See gh-20417
5 years ago
ferengra a2680efadb Add clearCheckSums to Liquibase auto configuration
Liquibase auto configuration is extended with clearCheckSums to allow
to clear all checksums in the current changelog, so they will be
recalculated upon the next update.

See gh-20417
5 years ago
Andy Wilkinson 4fd8f376dc Merge branch '2.2.x'
Closes gh-20503
5 years ago
Andy Wilkinson 9fbb664db6 Avoid eager init when evaluating DevToolsDataSourceCondition
Previously, DevToolsDataSourceCondition called
getBeanNamesForType(Class) which could trigger unwanted initialization
of lazy init singletons and objects created by FactoryBeans.

This commit updates DevToolsDataSourceCondition to prohibit eager
init when getting the names of the beans of a particular type.

Fixes gh-20430
5 years ago
Andy Wilkinson 2f92261f97 Merge branch '2.2.x'
Closes gh-20502
5 years ago
Andy Wilkinson e937b2e0cd Merge branch '2.1.x' into 2.2.x
Closes gh-20501
5 years ago
Andy Wilkinson f251772e17 Fix behaviour of DependencyCustomizer ifAllResourcesPresent
Previously, DependencyCustomizer's ifAllResourcesPresent method
would return a customizer that added modules if any of the resources
were present. This commit corrects this behaviours so that modules are
only added if all resources are present.

Fixes gh-20418
5 years ago
Johnny Lim 8526e66939 Polish
See gh-20498
5 years ago
Stephane Nicoll 9370f21221 Upgrade to Spring Data Neumann-M4
Closes gh-20241
5 years ago
Andy Wilkinson 899efc9eba Merge branch '2.2.x'
The fix was applied as part of 308e1d36. This commit merges forwards
the test that was added in 2.1.x and 2.2.x.

Fixes gh-20386 in 2.2.0.M3.
5 years ago
Andy Wilkinson e1ce21c3a5 Merge branch '2.1.x' into 2.2.x
Closes gh-20499
5 years ago
Andy Wilkinson 2b2113714d Use getTomcatWebServer to create TomcatWebServer instance
TomcatReactiveWebServerFactory's getTomcatWebServer is described as
being a hook point the can be overrideden to return a different
TomcatWebServer or to apply additional processing to the Tomcat
server. Previously, this did not work as the method was not called
to create the TomcatWebServer instance. Instead, TomcatWebServer was
instantiated and returned directly.

This commit updates TomcatReactiveWebServerFactory to call
getTomcatWebServer to create the TomcatWebServer instance. A test
has also been added to verify that the method is now used.

Fixes gh-20386
5 years ago
Andy Wilkinson 4d371f0d88 Merge branch '2.2.x'
Closes gh-20491
5 years ago
Florian Dreier 76451d47b7 Update versiion of git-properties plugin shown in the docs
See gh-20436
5 years ago
Andy Wilkinson c917b61484 Reinstate leading / in default value for spring.liquibase.change-log
Unfortunately, while redundant for new applications, removing the
leading slash adversely affected existing application upon upgrades as
it caused Liquibase to re-apply every change log.

Closes gh-20177
5 years ago
dreis2211 589213daab Improve unused exclusion detection and remove those that are unused
See gh-20472
5 years ago
Andy Wilkinson e2518917f4 Tolerate different connection failure exception thrown on Java 11+
See gh-4657
5 years ago
Andy Wilkinson 29c6b9da5c Upgrade to Postgresql 42.2.11
Closes gh-20488
5 years ago
Andy Wilkinson c5674d80d2 Upgrade to Maven Source Plugin 3.2.1
Closes gh-20487
5 years ago
Andy Wilkinson 5117a6ac6f Upgrade to Maven Shade Plugin 3.2.2
Closes gh-20486
5 years ago
Andy Wilkinson d29ca237b5 Upgrade to Flatten Maven Plugin 1.2.1
Closes gh-20485
5 years ago
Andy Wilkinson 3fa6f04701 Upgrade to Build Helper Maven Plugin 3.1.0
Closes gh-20484
5 years ago
Andy Wilkinson de59586170 Reinstate spring-boot-dependencies' exclusion of jcl-over-slf4j
Closes gh-20441
5 years ago
Andy Wilkinson 8282c1b897 Upgrade to Spring Security 5.3.0.RELEASE
Closes gh-20482
5 years ago
Andy Wilkinson d50ac8d086 Upgrade to Reactor Bom Dysprosium-SR5
Closes gh-20481
5 years ago
Andy Wilkinson 156a67c640 Upgrade to Netty 4.1.47.Final
Closes gh-20480
5 years ago
Andy Wilkinson 6f1218494a Upgrade to Kotlin Coroutines 1.3.4
Closes gh-20479
5 years ago
Andy Wilkinson 3dc5a4e38f Upgrade to Jetty 9.4.27.v20200227
Closes gh-20476
5 years ago
Andy Wilkinson 849b23f71d Upgrade to Jersey 2.30.1
Closes gh-20475
5 years ago
Andy Wilkinson 2ec99e7b1c Upgrade to Jackson Bom 2.10.3
Closes gh-20474
5 years ago
Andy Wilkinson fe4297086b Upgrade to Dropwizard Metrics 4.1.5
Closes gh-20473
5 years ago
Andy Wilkinson 4a0b8bb5ba Start using Cassandra Driver's bom
Fixes gh-20441
5 years ago
Andy Wilkinson b63a7c4631 Upgrade to XmlUnit2 2.6.4
Closes gh-20471
5 years ago
Andy Wilkinson d8ce02e667 Upgrade to WebJars Locator Core 0.44
Closes gh-20470
5 years ago
Andy Wilkinson 485498c5ac Upgrade to Spring Kafka 2.4.3.RELEASE
Closes gh-20469
5 years ago
Andy Wilkinson 22fa5d257a Upgrade to Spring AMQP 2.2.5.RELEASE
Closes gh-20468
5 years ago
Andy Wilkinson 6087fd6b51 Upgrade to SnakeYAML 1.26
Closes gh-20467
5 years ago
Andy Wilkinson 662c08acd5 Upgrade to SendGrid 4.4.5
Closes gh-20466
5 years ago
Andy Wilkinson 97dd978a91 Upgrade to Selenium HtmlUnit 2.38.0
Closes gh-20465
5 years ago
Andy Wilkinson 2620be1e0f Upgrade to RxJava2 2.2.18
Closes gh-20464
5 years ago
Andy Wilkinson 742f584d60 Upgrade to OkHttp3 3.14.7
Closes gh-20463
5 years ago
Andy Wilkinson 3d435df37b Upgrade to Netty tcNative 2.0.29.Final
Closes gh-20462
5 years ago
Andy Wilkinson 2fa35fbcbc Upgrade to Neo4j OGM 3.2.9
Closes gh-20461
5 years ago
Andy Wilkinson 77ad8d3a4f Upgrade to MongoDB 4.0.0
Closes gh-20460
5 years ago
Andy Wilkinson c399323ac4 Upgrade to Mockito 3.3.0
Closes gh-20459
5 years ago
Andy Wilkinson ad1ef31977 Upgrade to Log4j2 2.13.1
Closes gh-20458
5 years ago
Andy Wilkinson fa68cc4ee5 Upgrade to Liquibase 3.8.7
Closes gh-20457
5 years ago
Andy Wilkinson f31e589b07 Upgrade to jOOQ 3.13.1
Closes gh-20456
5 years ago
Andy Wilkinson 02ae6458f7 Upgrade to Jetty Reactive HTTPClient 1.1.2
Closes gh-20455
5 years ago
Andy Wilkinson 295f063463 Upgrade to Janino 3.1.1
Closes gh-20454
5 years ago
Andy Wilkinson a45cb3d712 Upgrade to Jakarta XML WS 2.3.3
Closes gh-20453
5 years ago
Andy Wilkinson f910fd8ac8 Upgrade to Jakarta XML Bind 2.3.3
Closes gh-20452
5 years ago
Andy Wilkinson e61dcc38d7 Upgrade to Jakarta Activation 1.2.2
Closes gh-20451
5 years ago
Andy Wilkinson 911a1912f6 Upgrade to Infinispan 10.1.3.Final
Closes gh-20450
5 years ago
Andy Wilkinson 8ac97d6d3e Upgrade to HttpClient 4.5.12
Closes gh-20449
5 years ago
Andy Wilkinson ee3ff3e094 Upgrade to HtmlUnit 2.38.0
Closes gh-20448
5 years ago
Andy Wilkinson 3251c9d2b0 Upgrade to Hibernate 5.4.12.Final
Closes gh-20447
5 years ago
Andy Wilkinson 2a8136b56f Upgrade to FreeMarker 2.3.30
Closes gh-20446
5 years ago
Andy Wilkinson d2ebd77861 Upgrade to Flyway 6.3.0
Closes gh-20445
5 years ago
Andy Wilkinson 0cd8197ebf Upgrade to Couchbase Client 2.7.13
Closes gh-20444
5 years ago
Andy Wilkinson 7971bd50ba Upgrade to Cassandra Driver 4.5.0
Closes gh-20443
5 years ago
Andy Wilkinson 707fb929a2 Upgrade to Byte Buddy 1.10.8
Closes gh-20442
5 years ago
Andy Wilkinson 19cc388861 Test Tomcat's handling of a request on an idle connection
See gh-4657
5 years ago
Andy Wilkinson b8cb61bbe0 Align embedded Jetty's graceful shutdown behaviour with standalone
Standalone Jetty will, by default, include a Connection: close header
in all responses once graceful shutdown has begun. Previously, the
way in which we were shutting Jetty down did not cause this to happen.

This commit updates JettyGracefulShutdown to shut down each connector.
This causes Jetty to send the Connection: close header, aligning its
behaviour more closely with what it does when used standalone. The
tests have also been updated to verify this behaviour and to ensure
that the correct port is used for requests even once the connector is
no longer bound and the web server no longer knows its ephemeral port.

See gh-4657
5 years ago
Andy Wilkinson 5bb66e1b85 Try to make reactive Jetty connect after shutdown test more robust
See gh-4657
5 years ago
Madhura Bhave fd50a6755f Merge branch '2.2.x'
Closes gh-20433
5 years ago
Madhura Bhave a27e145f03 Merge branch '2.1.x' into 2.2.x
Closes gh-20432
5 years ago
Madhura Bhave 06d870bdd0 Do not wrap CF JSON Keys containing special characters
This reverts commit 6828a15d31.
The commit has been reverted as it breaks backwards compatiblity.

Fixes gh-20343
5 years ago
Andy Wilkinson 6ec3865ed0 Polish spelling of elapsed
See gh-4657
5 years ago
Andy Wilkinson da06b38117 Polish
See gh-4657
5 years ago
Andy Wilkinson 308e1d3675 Add support for gracefully shutting down the web server
This commit adds support for gracefully shutting down the embedded
web server. When a grace period is configured
(server.shutdown.grace-period), upon shutdown, the web server will no
longer permit new requests and will wait for up to the grace period
for active requests to complete.

Closes gh-4657
5 years ago
dreis2211 9481f2c68d Remove hardcoded version from VersionOverridingElasticsearchContainer
See gh-20428
5 years ago
Stephane Nicoll f1f662e745 Revert Spring Data Couchbase version override 5 years ago
wycm 916a4743bb Polish
See gh-20419
5 years ago
Stephane Nicoll 278f769f80 Merge branch '2.2.x' 5 years ago
Stephane Nicoll 1fdb08300b Polish 5 years ago
dreis2211 6036df5f33 Upgrade to Elasticsearch 7.6.1
See gh-20423
5 years ago
dreis2211 361739ea3c Upgrade to Testcontainers 1.13.0
See gh-20416
5 years ago
dreis2211 53e8e49552 Fix JarFileTests for multi-release JARs on JDK14
See gh-20180
5 years ago