Commit Graph

2493 Commits (3460c24a169659e91eb312eeb10c737e64eb4652)

Author SHA1 Message Date
Andy Wilkinson 3e243de41b Merge branch '2.2.x' into 2.3.x
Closes gh-24121
4 years ago
dreis2211 033c78b945 Fix link to Flyway callback docs
See gh-24119
4 years ago
Brian Clozel f0a6128db3 Add spring.web.resources.cache.use-last-modified
Prior to this commit, packaging a Spring Boot application as a container
image with Cloud Native Buildpacks could result in unwanted browser
caching behavior, with "Last-Modified" HTTP response headers pointing to
dates in the far past.

This is due to CNB resetting the last-modified date metadata for static
files (for build reproducibility and container layer caching) and Spring
static resource handling relying on that information when serving static
resources.

This commit introduces a new configuration property
`spring.web.resources.cache.use-last-modified` that can be used to
disable this behavior in Spring if the application is meant to run as a
container image built by CNB.

The default value for this property remains `true` since this remains
the default value in Spring Framework and using that information in
other deployment models is a perfectly valid use case.

Fixes gh-24099
4 years ago
Andy Wilkinson 6a2332d477 Merge branch '2.3.x'
Closes gh-24062
4 years ago
Andy Wilkinson 44d0ce5ff1 Merge branch '2.2.x' into 2.3.x
Closes gh-24060
4 years ago
Andy Wilkinson 9c5d1646bd Show how to configure a case-sensitive physical naming strategy
Closes gh-24045
4 years ago
Andy Wilkinson bb5faeaabe Correct cross-reference in reference documentation
See gh-24033
4 years ago
Andy Wilkinson 21eb46739c Merge branch '2.3.x'
Closes gh-24033
4 years ago
Andy Wilkinson 84cee76700 Merge branch '2.2.x' into 2.3.x
Closes gh-24032
4 years ago
Andy Wilkinson d5980be623 Clarify documentation for relaxed binding of environment variables
Closes gh-22974
4 years ago
Andy Wilkinson a1af99640e Merge branch '2.3.x'
Closes gh-24026
4 years ago
Andy Wilkinson 28f7bc37a5 Merge branch '2.2.x' into 2.3.x
Closes gh-24025
4 years ago
Andy Wilkinson c289ba0c2c Recommend disabling context root redirects with proxied Tomcat
Closes gh-22908
4 years ago
Andy Wilkinson 2814f91fbf Merge branch '2.3.x'
Closes gh-24022
4 years ago
Andy Wilkinson 7c209478b6 Merge branch '2.2.x' into 2.3.x
Closes gh-24021
4 years ago
Pascal Schumacher 5472fcf433 Fix typo in Spring Session documentation
See gh-24020
4 years ago
Andy Wilkinson 6cb5a98036 Merge branch '2.3.x'
Closes gh-24019
4 years ago
Andy Wilkinson b2a058b6fe Merge branch '2.2.x' into 2.3.x
Closes gh-24018
4 years ago
Andy Wilkinson 2f280b01e1 Improve Spring Session back-off documentation
Closes gh-23151
4 years ago
Andy Wilkinson 73c444262b Merge branch '2.3.x'
Closes gh-24015
4 years ago
Andy Wilkinson f9ff39a7a6 Merge branch '2.2.x' into 2.3.x
Closes gh-24014
4 years ago
Andy Wilkinson 35bff55097 Ensure that Quartz can be auto-configured with a Quartz-specific TM
Previously, Quartz could be configured with a specific DataSource
using `@QuartzDataSource` but it was not possible to configure a
Quartz-specific transaction manager. This could result in the
different DataSources being used by Quartz itself and Quart'z
DataSourceTransactionManager.

This commit introduces a new qualifier, `@QuartzTransactionManager`,
that can be used to avoid the above-described problem. Any
`@QuartzTransactionManager`-annotated bean will be used by the
Quartz auto-configure configuration instead of the application's main
`TransactionManager`. If no such qualified bean is present, the
application's main TransactionManager, if any, will be used as before.

Fixes gh-20184
4 years ago
Andy Wilkinson c76b246463 Merge branch '2.3.x'
Closes gh-24005
4 years ago
Andy Wilkinson b846143c37 Merge branch '2.2.x' into 2.3.x
Closes gh-24004
4 years ago
Andy Wilkinson d32d65b02c Add tip about providing as much typo info as possible in @Bean methods
Closes gh-22925
4 years ago
izeye 9c35cd41ad Polish
See gh-23986
4 years ago
Andy Wilkinson c22e655848 Move spring.resources.* properties to spring.web.resources.*
Closes gh-23917
4 years ago
Andy Wilkinson 2db8e7eebe Polish "Add liquibase driver class name property"
See gh-23958
4 years ago
Stephane Nicoll 93e36a97ab Remove version elements from Maven plugin documentation
This commit removes `<version>` from the Maven Plugin documentation
where it makes sense so that versions aren't hardcoded unnecessarily.

Rather, a plugin or dependency management should be in place so those
are not needed.

Closes gh-23909
4 years ago
Phillip Webb cf673cee55 Use stricter document properties separator logic
Update `OriginTrackedPropertiesLoader` with stricter logic around the
document separator. If the preceding or following lines are comments
then the separator will be ignored.

Closes gh-22963
4 years ago
Phillip Webb a0862f9146 Support wildcard configtree imports
Update `ConfigTreeConfigDataResource` so that a wildcard suffix can
be used to import multiple folders. The pattern logic from
`StandardConfigDataLocationResolver` has been extracted into a new
`LocationResourceLoader` class so that it can be reused.

Closes gh-22958
4 years ago
Andy Wilkinson 689d0c8307 Remove skipping of spring-boot-* projects from DevTools restart triggers
Closes gh-23158
4 years ago
Stephane Nicoll 9ab3abb728 Add support for SAML2 relying party registration's decryption credentials
Closes gh-23705
4 years ago
Andy Wilkinson 10f887a5ad Introduce management base-path property for servlet and reactive actuator
Previously, the base path of a servlet-based management server could be
configured using management.server.servlet.context-path but there was no
equivalent property for WebFlux.

This commit introduces a new property, management.server.base-path,
that can be used with both servlet and reactive management servers. The
existing servlet-specific property has been deprecated in favour of the
new general property. When using the servlet stack, if both the general
property and the servlet-specific property are set, the new general
property takes precedence. When using the reactive stack, only the new
general property is considered.

Closes gh-22906
4 years ago
Stephane Nicoll e0f123e676 Do not use servlet session timeout for reactive web applications
This commit fixes the auto-configuration of Spring Session to use
"server.servlet.session.timeout" as a fallback for Servlet-based web
applications only.

Closes gh-23752
4 years ago
Phillip Webb 062bd90d87 Add properties for logging charsets
Add `logging.charset.console` and `logging.charset.file` properties
that can be used to configure charsets for Logback/Log4J2.

Closes gh-23827
4 years ago
Brian Clozel fa220ace4d Fix missing broken link in reference docs
See gh-23126
4 years ago
Brian Clozel 5fceb9d5b7 Change favicon StaticResourceLocation
Prior to this commit, the `StaticResourceLocation` for favicons would
point to `"/**/favicon.ico"`. This location does not reflect the current
web development landscape, since the png format and size variants are
not supported here. Also, the `"**"` pattern can be costly at runtime
and is deprecated by the new path pattern support in Spring Framework
(see gh-22833).

This commit changes the default locations to `"/favicon.*","/*/icon-*"`,
supporting common use cases such as `"/favicon.ico"`, `"/favicon.png"`
and `"/icons/icon-48x48.png"`.

Closes gh-23126
4 years ago
Pushkaraj S e60f26f8cc Polish HTTP/2 Cleartext documentation
See gh-23816
Closes gh-23820
4 years ago
Phillip Webb 1725594a0e Rationalize Logback logging properties
Deprecate and provide alternatives for logging properties that are
specific to Logback.

The following Spring Boot properties have been changed:

  * logging.pattern.rolling-file-name ->
    logging.logback.rollingpolicy.file-name-pattern

  * logging.file.clean-history-on-start ->
    logging.logback.rollingpolicy.clean-history-on-start

  * logging.file.max-size ->
    logging.logback.rollingpolicy.max-file-size

  * logging.file.total-size-cap ->
    logging.logback.rollingpolicy.total-size-cap

  * logging.file.max-history ->
    logging.logback.rollingpolicy.max-history

As have the system environment properties that they map to:

  * ROLLING_FILE_NAME_PATTERN ->
    LOGBACK_ROLLINGPOLICY_FILE_NAME_PATTERN

  * LOG_FILE_CLEAN_HISTORY_ON_START ->
    LOGBACK_ROLLINGPOLICY_CLEAN_HISTORY_ON_START

  * LOG_FILE_MAX_SIZE ->
    LOGBACK_ROLLINGPOLICY_MAX_FILE_SIZE

  * LOG_FILE_TOTAL_SIZE_CAP ->
    LOGBACK_ROLLINGPOLICY_TOTAL_SIZE_CAP

  * LOG_FILE_MAX_HISTORY ->
    LOGBACK_ROLLINGPOLICY_MAX_HISTORY

This commit also cleans up and simplifies `DefaultLogbackConfiguration`.

Closes gh-23609
4 years ago
Brian Clozel 9c54a5369d Merge branch '2.3.x'
Closes gh-23816
4 years ago
Brian Clozel b37eecc015 Merge branch '2.2.x' into 2.3.x
Closes gh-23812
4 years ago
Brian Clozel 9478cd2dfb Document how to configure h2c protocol
Prior to this commit, the how-to documentation would say that Spring
Boot does not support the h2c protocol. While it's not supported
out-of-the-box with a configuration property, this protocol can still be
configured using server customizers.

This commit documents, with code snippets, the server customizers one
should use to configure the h2c protocol in an application - for each
supported server.

Closes gh-21997
4 years ago
Stephane Nicoll 52f2c27779 Merge branch '2.3.x'
Closes gh-23765
4 years ago
Stephane Nicoll 4371a3c080 Merge branch '2.2.x' into 2.3.x
Closes gh-23764
4 years ago
Stephane Nicoll 4f4cc8b182 Polish contribution
See gh-23755
4 years ago
cdalexndr 2f2b1b9656 Note that using LiveReload requires Devtools restart to be enabled
See gh-23755
4 years ago
Stephane Nicoll dd74810c80 Revert "Fix detection logic for embedded databases"
This reverts commit c4a5a34702.

See gh-23721
4 years ago
dreis2211 47bac6a90d Fix links to Spring Framework documentation
See gh-23737
4 years ago
Asha Somayajula c4a5a34702 Fix detection logic for embedded databases
Closes gh-23721
4 years ago
Andy Wilkinson f0b0a073c3 Remove unwanted titles from config blocks
Closes gh-23722
4 years ago
Stephane Nicoll c0b267feb4 Polish "Fix detection logic for embedded databases"
See gh-23693
4 years ago
Phillip Webb 1cf9fc107e Improve ConfigData processing code
Refactor `ConfigData` processing code to make it less awkward to
follow.

Prior to this commit the `ConfigDataLocationResolver` would take a
String location and return a `ConfigDataLocation` instance. This was
a little confusing since sometimes we would refer to `location` as the
String value, and sometimes it would be the typed instance. We also
had nowhere sensible to put the `optional:` prefix logic and we needed
to pass a `boolean` parameter to a number of methods. The recently
introduced `Orgin` support also didn't have a good home.

To solve this, `ConfigDataLocation` has been renamed to
`ConfigDataResource`. This frees up `ConfigDataLocation` to be used
as a richer `location` type that holds the String value, the `Orgin`
and provides a home for the `optional:` logic.

This commit also cleans up a few other areas of the code, including
renaming `ResourceConfigData...` to `StandardConfigData...`. It also
introduces a new exception hierarchy for `ConfigDataNotFoundExceptions`.

Closes gh-23711
4 years ago
Stephane Nicoll a5b27789c0 Document how to use DataNeo4jTest with reactive access
Closes gh-23630
4 years ago
Stephane Nicoll 27af908b99 Note that a Neo4j reactive transaction manager is not auto-configured
Closes gh-23629
4 years ago
Johnny Lim 4a26e11268 Polish
See gh-23634

Closes gh-23634
4 years ago
Stephane Nicoll 34c4c3f235 Expose cache metrics for Redis
This commit adds support for Redis cache metrics. Users can opt-in for
statistics using the "spring.cache.redis.enable-statistics" property.

Closes gh-22701
4 years ago
Phillip Webb 745e22e508 Merge branch '2.3.x' into master
Closes gh-23612
4 years ago
Phillip Webb 61181b4554 Merge branch '2.2.x' into 2.3.x
Closes gh-23611
4 years ago
Phillip Webb c523295694 Merge branch '2.1.x' into 2.2.x
Closes gh-23610
4 years ago
Phillip Webb 206356728c Add upgrading section to reference docs
Add a section to the reference documentation with links to the release
notes on the wiki.

Closes gh-23529
4 years ago
Stephane Nicoll 1296b4dfe6 Revert "Support constructor binding on 3rd party classes"
This commit reverts the support of constructor binding on 3rd party
classes using @ImportConfigurationPropertiesBean

See gh-23172

Closes gh-23593
4 years ago
Phillip Webb 2595258494 Provide both properties and YAML examples in docs
Update all configuration examples in the docs to YAML and make use of
the new `configblocks` spring-asciidoctor-extensions feature to
automatically create both "Properties" and "Yaml" versions.

Closes gh-23515
4 years ago
Phillip Webb 18e4ab5042 Use title case for config props appendix
Closes gh-23603
4 years ago
Stephane Nicoll 797c12e75d Merge branch '2.3.x'
Closes gh-23573
4 years ago
Thorasine 6c3dfac1d0 Fix typos
See gh-23561
4 years ago
Madhura Bhave ae7de284f4 Merge branch '2.3.x'
Closes gh-23568
4 years ago
Madhura Bhave 121ba2b0ab Merge branch '2.2.x' into 2.3.x
Closes gh-23567
4 years ago
ketaki-t 66aa24b5f0 Remove documentation for unsupported gradle versions
See gh-23562
4 years ago
Stephane Nicoll 75554ce236 Polish "Add support for Oracle UCP"
See gh-23403
4 years ago
Stephane Nicoll 4009acf025 Add support for Hazelcast
This commit upgrades to Hazelcast 4.0.3, yet keeping compatibility with
Hazelcast 3.x.

Closes gh-20856
Closes gh-23475
4 years ago
thorasine 2d74aef6ef Fix typos
See gh-23465
4 years ago
Stephane Nicoll c44e1ec0ad Merge branch '2.3.x'
Closes gh-23462
4 years ago
Stephane Nicoll b3c5588c86 Merge branch '2.2.x' into 2.3.x
Closes gh-23461
4 years ago
Pavel Gordon 62eb835a4e Fix link to Log4j's JDK Logging Adapter in reference documentation
See gh-23459
4 years ago
thorasine 9955dac316 Fix typo
See gh-23456
4 years ago
Stephane Nicoll 7d984d7f89 Merge branch '2.3.x'
Closes gh-23453
4 years ago
Stephane Nicoll 3adf06df17 Merge branch '2.2.x' into 2.3.x
Closes gh-23452
4 years ago
Stephane Nicoll 2999f09a40 Rework tip on templates location in the IDE
This commit rework the tip on locating templates when running the app
in the IDE. Using classpath* should not change anything as this won't
make a difference without a pattern in the path.

Closes gh-23068
4 years ago
Stephane Nicoll 531690b8e1 Merge branch '2.2.x' into 2.3.x
Closes gh-23448
4 years ago
Stephane Nicoll 7f84a92ef1 Document that Java 15 is supported
Closes gh-23447
4 years ago
Stephane Nicoll 1631ae23f5 Allow RestTemplateBuilder to be further customized
Closes gh-23389
4 years ago
dreis2211 5c4b4b0466 Document that Java 15 is a supported version
See gh-22366
4 years ago
Phillip Webb 5f49d4a8d7 Rename @ConfigurationPropertiesImport
Rename `@ConfigurationPropertiesImport` to
`@ImportAsConfigurationPropertiesBean` and also refine the registrar
so that it can be used with type directly annotated with
`@ConfigurationProperties`.

Closes gh-23172
4 years ago
Phillip Webb c857a743a0 Rename @ImportConfigurationPropertiesBean
Rename `@ImportConfigurationPropertiesBean` to
`@ConfigurationPropertiesImport`.

Closes gh-23172
4 years ago
Stephane Nicoll f03ed3b2a7 Publish single page doc to /htmlsingle consistently
Closes gh-21585
4 years ago
Brian Clozel 20eb8d0fc2 Merge branch '2.3.x'
Closes gh-23253
4 years ago
Brian Clozel 62cb87bd95 Merge branch '2.2.x' into 2.3.x
Closes gh-23252
4 years ago
David Good 775f0fa861 Improve sanitization for list of URI types
Prior to this commit, Actuator would sanitize properties values when
serializing them on the dedicated endpoint. Keys like "password" or
"secret" are entirely sanitized, but other keys like "uri" or "address"
are considered as URI types and only the password part of the user info
is sanitized.

This commit fixes the sanitization process where lists of such URI types
would not match the first entries of the list since they're starting
with `'['`. This commit improves the regexp matching process to sanitize
all URIs within a collection.

The documentation is also updated to better underline the processing
difference between complete sanitization and selective sanitization for
URIs.

Fixes gh-23037
4 years ago
Andy Wilkinson e743d5fe66 Exclude by jar type when running and packaging with Maven
This commit updates the Maven Plugin to filter dependencies based on
the Spring-Boot-Jar-Type entry in their manifest. Jars with a
Spring-Boot-Jar-Type of dependencies-starter or annotation-processor
are excluded.

See gh-22036
4 years ago
Andy Wilkinson dd024048e9 Merge branch '2.3.x'
Closes gh-23244
4 years ago
Andy Wilkinson aab4ee9aa2 Merge branch '2.2.x' into 2.3.x
Closes gh-23243
4 years ago
Andy Wilkinson e4691a4c61 Document that sliced tests don't scan @ConfigurationProperties beans
Closes gh-23210
4 years ago
Phillip Webb f260c77fe3 Add @ImportConfigurationPropertiesBean support
Add repeatable `@ImportConfigurationPropertiesBean` annotation that can
be used to import types and treat them as `@ConfigurationProperties`
beans. This annotation is specifically designed to support third-party
classes that can't contain any Spring annotations.

Closes gh-23172
4 years ago
Phillip Webb df944c6354 Polish 4 years ago
Stephane Nicoll b9b7393053 Deprecate Cassandra health indicators that rely on Spring Data
With the introduction of health indicators that only require the
CqlSession, this commit deprecates the health indicators that require
Spring Data since the latter build on top of the former.

Closes gh-23226
4 years ago
Brian Clozel 1d73d4eda7 Remove Elasticsearch RestClient auto-configuration
Prior to this commit, Spring Boot would auto-configure both
Elasticsearch variants: `RestClient` ("Low Level" client) and
`RestHighLevelClient` ("High Level" client).
Since one can be derived from the other, this would create complex and
unclear situations depending on what developers provided with their
configuration.

`RestHighLevelClient` is mostly for actual use of the Elasticsearch API,
with support for specific methods and (de)serialization. On the other
hand, `RestClient` is merely wrapping the Apache HTTP client for
load-balancing support and low level HTTP features.

This commit completely removes the support for `RestClient` in Spring
Boot and now requires the presence of the
`org.elasticsearch.client:elasticsearch-rest-high-level-client`
dependency for REST client support with Elasticsearch.

Closes gh-22358
4 years ago
Spencer Gibb 27136cda44 Fix typo
See gh-23215
4 years ago
Brian Clozel 676e1809fb Add startup Actuator endpoint
This commit builds on top of gh-22603 and exposes data collected by the
`BufferingApplicationStartup` on a dedicated `"/startup"` Actuator
endpoint.

Closes gh-23213
4 years ago
Brian Clozel fdf21da7ba Add buffering ApplicationStartup variant
As of spring-projects/spring-framework#24878, Spring Framework provides
an `ApplicationStartup` infrastructure that applications can use to
collect and track events during the application startup phase.

This commit adds a new `BufferingApplicationStartup` implementation that
buffer `StartupStep`s and tracks their execution time. Once buffered,
these steps can be pushed to an external metrics system or drained
through a web endpoint, to a file...

Closes gh-22603
4 years ago
Stephane Nicoll 29b5c4f8cb Merge branch '2.3.x'
Closes gh-23145
4 years ago
Stephane Nicoll 8404c4c71b Document how to perform tasks after application startup
Closes gh-22100
4 years ago
Stephane Nicoll dee3fad8d0 Merge branch '2.3.x'
Closes gh-23144
4 years ago
Stephane Nicoll e74e53fdaf Clarify how to take full control of ElasticSearch's rest client
Closes gh-23074
4 years ago
Stephane Nicoll 1fea6914bc Merge branch '2.3.x'
Closes gh-23142
4 years ago
Stephane Nicoll 62dbd90d46 Document how to add auto-configurations to a test slice
Closes gh-22531
4 years ago
Stephane Nicoll 8bcae12ffc Merge branch '2.3.x'
Closes gh-23140
4 years ago
Stephane Nicoll 008eee42a1 Add a note about using graceful shutdown from an IDE
Closes gh-22959
4 years ago
Phillip Webb 0ddd1b6ce8 Refine global optional config data opt-out
Rename the opt-out property and use an enum in case we want to provide
additional options in the future.

Closes gh-23097
4 years ago
Phillip Webb aa0f204732 Add global optional config data opt-out
Support a `spring.config.all-locations-optional` property which can be
set to `true` if all config data locations should be considered
optional.

Closes gh-23097
4 years ago
Phillip Webb d0fce0553f Support extensionless file imports
Update `ResourceConfigDataLocationResolver` so that it can import files
that have no file extension.

Closes gh-22280
4 years ago
Phillip Webb 081a7ee28c Throw exception if import locations are not found
Update config data processing code so that import locations are
mandatory by default. Any import request will now throw a
`ConfigDataLocationNotFoundException` if the specified import
location cannot be found. For optional imports, the user can
use the `optional:` prefix to indicate that the application should
continue to start, even if the location does not exist.

Closes gh-23032
4 years ago
Stephane Nicoll 65a5994354 Merge branch '2.3.x'
Closes gh-23061
4 years ago
Stephane Nicoll 39dc2e7de4 Merge branch '2.2.x' into 2.3.x
Closes gh-23060
4 years ago
Stephane Nicoll f1455b156a Polish "Add example of custom Actuator operations"
See gh-23028
4 years ago
Ivo Smid e8de069e00 Add example of custom Actuator operations
See gh-23028
4 years ago
Stephane Nicoll d04f2583f1 Merge branch '2.3.x'
Closes gh-23005
4 years ago
Stephane Nicoll 9a374f7d67 Merge branch '2.2.x' into 2.3.x
Closes gh-23004
4 years ago
dreis2211 06eb7e9777 Mention correct JUnit 5 annotations in Kotlin testing section
See gh-23002
4 years ago
Scott Frederick 341615d7d0 Merge branch '2.3.x'
Closes gh-23000
4 years ago
Scott Frederick 3f80638a36 Fail on layertools extract with launch script
This commit adds a check to the `layertools extract` command to
ensure that the jar file being processed is readable and has a
valid directory.

Fixes gh-22993
4 years ago
Scott Frederick b7fdf8fe87 Preserve user-provided values in MongoClientSettings
Prior to this commit, values from MongoProperties would always
overwrite matching fields in MongoClientSettings. This commit
preserves all values in MongoClientSettings if the client app
provides the MongoClientSettings bean, and only overwrites from
MongoProperties if no MongoClientSettings bean is provided.

Fixes gh-22321
4 years ago
Stephane Nicoll 8c0318edc7 Polish "Consider RecordFilterStrategy in Kafka auto-configuration"
See gh-22973
4 years ago
dreis2211 61838eede1 Fix typos in docs
See gh-22945
4 years ago
Stephane Nicoll 80e9bfb9a6 Merge branch '2.3.x' 4 years ago
Stephane Nicoll 6b679b7d64 Polish
See gh-22945
4 years ago
Phillip Webb 5591a6ab77 Merge branch '2.3.x'
Closes gh-22961
4 years ago
Phillip Webb 03d4b89c06 Merge branch '2.2.x' into 2.3.x
Closes gh-22960
4 years ago
Maciej Walkowiak 15de956566 Fix typo `Assert4J` -> `AssertJ`
See gh-22948
4 years ago
Madhura Bhave bbbbe8e4d2 Make security auto-configs back off when SecurityFilterChain present
Closes gh-22739
4 years ago
Phillip Webb 310ef6e999 Rename volumemount -> configtree
Closes gh-22941
4 years ago
Stephane Nicoll 045d2f678d Document Spring Data Neo4j 6 support
Closes gh-22652
4 years ago
Stephane Nicoll 42ca62b2e7 Merge branch '2.3.x'
Closes gh-22931
4 years ago
Stephane Nicoll df78105a3c Merge branch '2.2.x' into 2.3.x
Closes gh-22930
4 years ago
Stephane Nicoll f61a632a37 Polish "Fix conditions that lead to auto-configure PushGateway"
See gh-22919
4 years ago
smlc c355b95f6c Fix conditions that lead to auto-configure PushGateway
See gh-22919
4 years ago
Stephane Nicoll 2c120eb161 Merge branch '2.3.x'
Closes gh-22900
4 years ago
Stephane Nicoll 38baaf31d3 Merge branch '2.2.x' into 2.3.x
Closes gh-22899
4 years ago
Stephane Nicoll ee2363fca7 Polish "Harmonize Discover the HTTP Port at Runtime How-To"
See gh-22898
4 years ago
John Franco 303768b2b5 Harmonize Discover the HTTP Port at Runtime How-To
See gh-22898
4 years ago
Madhura Bhave 4799b26d2c Merge branch '2.3.x'
Closes gh-22897
4 years ago
Madhura Bhave eeca767c49 Merge branch '2.2.x' into 2.3.x
Closes gh-22895
4 years ago
Madhura Bhave cdbb7f441a Do not ignore null/empty values from SPRING_APPLICATION_JSON
Fixes gh-21542
4 years ago
Stephane Nicoll 8bcf5186dc Merge branch '2.3.x'
Closes gh-22891
4 years ago
Stephane Nicoll 92445fcc54 Merge branch '2.2.x' into 2.3.x
Closes gh-22890
4 years ago
Stephane Nicoll ccffd50285 Document the limitation of default value detection
Closes gh-22685
4 years ago
Stephane Nicoll 64a5aa9340 Polish 4 years ago
Stephane Nicoll 44e807738b Merge branch '2.3.x'
Closes gh-22889
4 years ago
Stephane Nicoll ac7320d7fe Document that Cassandra's application.conf is not considered
Closes gh-21787
4 years ago
Stephane Nicoll 5bd69fcd61 Merge branch '2.3.x'
Closes gh-22874
4 years ago
Stephane Nicoll dc4de06b35 Restore customization of the Couchbase cache manager
With the upgrade to the new Couchbase SDK and the related changes in
Spring Data Couchbase, CacheManagerCustomizer can no longer be used to
customize the Couchbase cache manager as it is an immutable class.

This commit introduces a dedicated callback for the
CouchbaseCacheManagerBuilder that is used by the auto-configuration and
update the documentation to refer to it with a sample usage.

Closes gh-22573
4 years ago
dreis2211 11df8216ad Fix some doc anchors
See gh-22839
4 years ago
Stephane Nicoll fcab5d6ce1 Merge branch '2.3.x' 4 years ago
Stephane Nicoll 2b578296f9 Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll 8962d6ca21 Polish 4 years ago
Brian Clozel 6336007038 Merge branch '2.3.x'
Closes gh-22826
4 years ago
Brian Clozel fea535d176 Update HTTP/2 auto-configuration for Jetty
Prior to this commit, the HTTP/2 server auto-configuration for Jetty
would require Conscrypt as a hard dependency.

This commit updates the auto-configuration for more flexibility and now
allows the following deployments:

* JDK9+ with the JDK ALPN implementation
* JDK8u252+ with the backported ALPN implementation
* Conscrypt with no JDK requirement

The auto-configuration now improves detection and guides developers in
case there is a missing `jetty-alpn-*-server` dependency.

The reference docs in the HOWTO section has been updated accordingly.

Closes gh-22188
4 years ago
Andy Wilkinson 4b17bfd889 Merge branch '2.3.x' 4 years ago
Andy Wilkinson 327138c227 Merge branch '2.2.x' into 2.3.x 4 years ago
Andy Wilkinson 63f7c75b61 Polish 4 years ago
Andy Wilkinson 792c4f46ef Merge branch '2.3.x'
Closes gh-22759
4 years ago
Andy Wilkinson c121f9f61f Merge branch '2.2.x' into 2.3.x
Closes gh-22758
4 years ago
Andy Wilkinson b53f54f2cf Add tip about using AopTestUtils.getTargetProxy with proxied spy beans
Closes gh-22281
4 years ago
Madhura Bhave b9abcf1615 Fail hard if spring.profiles.include is used with new config processing
Closes gh-22693
4 years ago
Andy Wilkinson 9c417d280c Merge branch '2.3.x'
Closes gh-22749
4 years ago
Andy Wilkinson a160755da5 Merge branch '2.2.x' into 2.3.x
Closes gh-22748
4 years ago
Andy Wilkinson bfe250e5d3 Clarify docs on schema and data SQL scripts with Flyway and Liquibase
Closes gh-20920
4 years ago
Stephane Nicoll 516582f6d3 Merge branch '2.3.x'
Closes gh-22744
4 years ago
Johnny Lim 1017774ed5 Polish
See gh-22740
4 years ago
Stephane Nicoll 313b2bef6f Polish "Add test slice for Spring Data Cassandra"
See gh-17490
4 years ago
Stephane Nicoll 36fb86a110 Update to core r2dbc support
This commit adapts the auto-configuration for the new core r2dbc support
in Spring Framework and provides auto-configuration for
R2dbcEntityOperations.

Closes gh-22708
4 years ago
Brian Clozel fb1234a22c Upgrade to Reactor 2020.0.0 SNAPSHOTs
See gh-22667
4 years ago
Stephane Nicoll bb3066f61a Merge branch '2.3.x'
Closes gh-22707
4 years ago
Stephane Nicoll 13f1d00048 Merge branch '2.2.x' into 2.3.x
Closes gh-22706
4 years ago
Stephane Nicoll 4082cddce2 Merge branch '2.1.x' into 2.2.x
Closes gh-22705
4 years ago
Johnny Lim bd2874de49 Fix broken links to Micrometer registry docs
See gh-22704
4 years ago
Brian Clozel e6957ec8c4 Merge branch '2.3.x'
Closes gh-22697
4 years ago
Brian Clozel 35093aacf4 Polish "Document properties to enable probe health indicators"
See gh-22631
4 years ago
Tadaya Tsuyukubo 630cbae7d7 Document properties to enable probe health indicators
Document property names to enable probe(readiness/liveness)
health indicators.

See gh-22631
4 years ago
Andy Wilkinson 95f76d68af Merge branch '2.3.x'
Closes gh-22677
4 years ago
Andy Wilkinson f81e8909fa Document how to re-enable DataSource auto-config when using R2DBC
Closes gh-22094
4 years ago
Andy Wilkinson 5f1198c917 Merge branch '2.3.x'
Closes gh-22670
4 years ago
Andy Wilkinson 45346b63ba Merge branch '2.2.x' into 2.3.x
Closes gh-22669
4 years ago
Andy Wilkinson 22dc4e7608 Clarify documentation on @AutoConfigureRestDocs with WebTestClient
Closes gh-15977
4 years ago
Andy Wilkinson 7e547b60cf Merge branch '2.2.x' into 2.3.x
Closes gh-22665
4 years ago
Andy Wilkinson 1871cffc7d Document that constructor binding does not support @…Unit annotations
Closes gh-22565
4 years ago
Stephane Nicoll 9bc71fe44f Polish "Upgrade to Spring Data Neo4j 6"
See gh-22299
4 years ago
Madhura Bhave 4b2c94cb2b Allow exclude only health groups
Closes gh-22053
4 years ago
Andy Wilkinson ddb4de2db1 Merge branch '2.3.x'
Closes gh-22630
4 years ago
Andy Wilkinson 77287f8632 Merge branch '2.2.x' into 2.3.x
Closes gh-22629
4 years ago
Andy Wilkinson 5ea8bb0676 Recommend the use of a MeterBinder when a metric depends on a bean
Closes gh-19557
4 years ago
Stephane Nicoll c6fde1e4d5 Polish "Update Neo4j health check to use the Neo4j Driver"
See gh-22302
4 years ago
Andy Wilkinson 1130f1dded Merge branch '2.3.x'
Closes gh-22623
4 years ago
Andy Wilkinson d6490da88b Merge branch '2.2.x' into 2.3.x
Closes gh-22622
4 years ago
Andy Wilkinson 856c55b188 List DevTools in section overview of multi-page documentation
Closes gh-22591
4 years ago
Andy Wilkinson 65d45c4e25 Merge branch '2.3.x'
Closes gh-22619
4 years ago
dreis2211 be8a70936d Add ElasticsearchReactiveHealthIndicator to docs
See gh-22616
4 years ago
Andy Wilkinson 8be8cc5452 Merge branch '2.3.x'
Closes gh-22618
4 years ago
Andy Wilkinson a2ce39d7eb Merge branch '2.2.x' into 2.3.x
Closes gh-22617
4 years ago
dreis2211 c405b8b9c9 Fix link to Elasticsearch health indicator
See gh-22598
4 years ago
Andy Wilkinson a822c6fb97 Merge branch '2.3.x'
Closes gh-22609
4 years ago
Andy Wilkinson 5471e16fce Merge branch '2.2.x' into 2.3.x
Closes gh-22608
4 years ago
Andy Wilkinson d9b61c4aaa Update link to App Engine's Spring Boot sample
Closes gh-22607
4 years ago
Andy Wilkinson 1c22ec9373 Merge branch '2.3.x' 4 years ago
Andy Wilkinson 280ecfcd47 Polish 4 years ago
Andy Wilkinson 4c45c265ef Merge branch '2.3.x'
Closes gh-22597
4 years ago
Andy Wilkinson 189fa12c9d Merge branch '2.2.x' into 2.3.x
Closes gh-22596
4 years ago
Andy Wilkinson 0a01875d41 Improve documentation about swapping one technical starter for another
Closes gh-20408
4 years ago
Stephane Nicoll 8c418adb9b Polish "Add auto-configuration for Neo4j driver"
See gh-22301
4 years ago
Andy Wilkinson a46572a884 Merge branch '2.3.x'
Closes gh-22593
4 years ago
Andy Wilkinson 4a3683f7dd Merge branch '2.2.x' into 2.3.x
Closes gh-22592
4 years ago
Andy Wilkinson 812a0ed0c6 Define the reference doc authors in a single place
Closes gh-20896
4 years ago
Andy Wilkinson 543384bfe6 Merge branch '2.3.x'
Closes gh-22590
4 years ago
Andy Wilkinson 810fdf4450 Merge branch '2.2.x' into 2.3.x
Closes gh-22589
4 years ago
Andy Wilkinson b631fa1405 Describe MongoClientSettingsBuilderCustomizer in the documentation
Closes gh-21696
4 years ago
Andy Wilkinson b8b53a0e3b Merge branch '2.3.x'
Closes gh-22588
4 years ago
Andy Wilkinson c2aa6cbc60 Merge branch '2.2.x' into 2.3.x
Closes gh-22587
4 years ago
Andy Wilkinson be428ef0f2 Document the need for configuration files to have a file extension
Closes gh-22278
4 years ago
Andy Wilkinson 6b4114e4cf Merge branch '2.3.x'
Closes gh-22575
4 years ago
Andy Wilkinson 979aef1f68 Merge branch '2.2.x' into 2.3.x
Closes gh-22574
4 years ago
Andy Wilkinson 7b3c0a9e09 Advise against java.util.Optional configuration properties
Closes gh-21868
4 years ago
izeye 6eba7c5f10 Polish
See gh-22549
4 years ago
Stephane Nicoll 3530ac9b0c Polish "Disable metrics export in integration tests"
See gh-21658
4 years ago
dreis2211 b01fb63de6 Polish
See gh-22524
4 years ago
Madhura Bhave 3f76eb2097 Add volume mount property source support
Add support for volume mounted directories where the filename becomes
the property key and the file contents becomes the value.

Support is provided via a dedicated `VolumeMountDirectoryPropertySource`
class which can either be used directly, or via a "volumemount:/..."
`spring.config.import` location.

Closes gh-19990

Co-authored-by: Phillip Webb <pwebb@vmware.com>
4 years ago
Madhura Bhave eee260fc03 Add support for profile groups
Add support for profile groups so that users can combine a number of
fine-grained profiles into a single logical group.

Closes gh-22522
4 years ago
Phillip Webb 8c6c4fa9fa Overhaul "externalized configuration" docs
Update the "externalized configuration" reference documentation
following the recent updates.

Closes gh-22521
4 years ago
Phillip Webb da69286838 Merge branch '2.3.x' 4 years ago
Phillip Webb d2a7808098 Polish 4 years ago
Brian Clozel c6df64aeb6 Merge branch '2.3.x' 4 years ago
Brian Clozel 03739e3097 Polish "Improve liveness/readiness health config"
See gh-22107
4 years ago
Brian Clozel 1d95e2f504 Merge branch '2.3.x'
Closes gh-22483
4 years ago
Brian Clozel fe807d6c0b Improve liveness/readiness health config
Prior to this commit, the application availability infrastructure
would mix the `AvailabilityState`, the `HealthIndicator` and the
`HealthGroup` concepts and would not align with the rest.

This commit auto-configures the livenessState and readinessState
health indicators with the relevant configuration properties.
Unlike other indicators, they are not enabled by default but might
be in future versions.

This also moves the `management.health.probes.enabled` property
to `management.endpoint.health.probes.enabled` since "probes" here
is not a health indicator but rather a configuration flag for the
health endpoint.

Finally, the probes auto-configuration is refined to automatically
add liveness and readiness indicators for the probes group if
they're not already present.

Closes gh-22107
4 years ago
Andy Wilkinson 19ad163486 Merge branch '2.3.x'
Closes gh-22411
4 years ago
Andy Wilkinson accc1f1ca8 Merge branch '2.2.x' into 2.3.x
Closes gh-22410
4 years ago
Andy Wilkinson 21f733b89b Merge branch '2.1.x' into 2.2.x
Closes gh-22409
4 years ago
Andy Wilkinson 179d2c79d6 Avoid trivialising what the reader's learning about
Closes gh-22408
4 years ago
Stephane Nicoll e03ac4bed6 Merge branch '2.3.x'
Closes gh-22360
4 years ago
Stephane Nicoll 30b5168fed Polish "Restructure "Building Container Images" section"
See gh-22296
4 years ago
Sebastiaan Fernandez c50a5b395b Restructure "Building Container Images" section
See gh-22296
4 years ago
Andy Wilkinson 177b3918ee Merge branch '2.3.x'
Closes gh-22340
4 years ago
Andy Wilkinson 259ea65388 Merge branch '2.2.x' into 2.3.x
Closes gh-22339
4 years ago
Andy Wilkinson d9882f2c88 Clarify the effects of ordering auto-configuration classes
Closes gh-22337
4 years ago
Andy Wilkinson 2643c60c5a Merge branch '2.3.x'
Closes gh-22316
4 years ago
Andy Wilkinson f52cdf10b3 Update WebServerInitEvent docs to reflect ordering w.r.t. refresh
Closes gh-22277
4 years ago
Brian Clozel 0f264b68e8 Add option to configure PathPatternParser
As of Spring Framework 5.3, it is now possible to use `PathPatternParser`
to parse and match request mapping path patterns, as an alternative to
the current default `AntPathMatcher`.

This new implementation has been used for a while in Spring WebFlux and
it’s been designed for consistency and performance.

This commit introduces a new configuration property for opting-in this
new variant:

`spring.mvc.pathmatch.matching-strategy=path_pattern_parser`

The default option is still `ant_path_matcher` for now, but we might
change the default in future versions since Spring Framework considers
it the best choice for modern applications.

There are several behavior differences with this new variant:

* double wildcards `"**"` are rejected when used in the middle patterns,
this is only allowed as the last matching segment in a pattern.

* it is incompatible with some path matching options, like
suffix-pattern, registered-suffix-pattern or configuring a Servlet
prefix on the `DispatcherServlet` (`spring.mvc.servlet.path=/test`)

This commit introduces two `FailureAnalyzer` implementations to guide
developers when facing those issues.

Closes gh-21694
4 years ago
Andy Wilkinson c258cec814 Merge branch '2.3.x'
Closes gh-22285
4 years ago
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
4 years ago
Stephane Nicoll 429a504bbe Polish "Allow data unit to be specified on the constructor parameter"
See gh-21746
4 years ago
Andy Wilkinson 1f1c6fd3ea Merge branch '2.3.x'
Closes gh-22265
4 years ago
Andy Wilkinson d84aeef529 Merge branch '2.2.x' into 2.3.x
Closes gh-22264
4 years ago
Andy Wilkinson 66987533d1 Link to application properties section from externalized config list
Closes gh-22262
4 years ago
Madhura Bhave 75abb9cc18 Merge branch '2.3.x'
Closes gh-22153
4 years ago
Johnny Lim 43aee1bddd Polish
See gh-22090
4 years ago
Madhura Bhave a963bba0e4 Merge branch '2.3.x' 4 years ago
Madhura Bhave 62f5e44324 Fix typo 4 years ago
Madhura Bhave fbf2beef6e Merge branch '2.3.x'
Closes gh-22152
4 years ago
Madhura Bhave 7a81cea513 Update layers.idx file example in docs
Fixes gh-21510
4 years ago
Andy Wilkinson 77eb5f7794 Polish "Add StatsD transport protocol configuration option"
See gh-22125
4 years ago
Lee Dobryden 5d41f60e45 Add StatsD transport protocol configuration option
See gh-22125
4 years ago
Andy Wilkinson a0946c8923 Start building against Reactor 2020.0.0 snapshots
See gh-21927
4 years ago
Stephane Nicoll ea63984f93 Merge branch '2.3.x'
Closes gh-22024
4 years ago
Stephane Nicoll d5385a7b64 Merge branch '2.2.x' into 2.3.x
Closes gh-22023
4 years ago
Stephane Nicoll 9b803af3c3 Polish "Document how to exclude an annotation processor with Maven"
See gh-22000
4 years ago
Marco Pens 627c0b1031 Document how to exclude an annotation processor with Maven
See gh-22000
4 years ago
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
4 years ago
Andy Wilkinson 07fb4b065d Merge branch '2.3.x'
Closes gh-21940
4 years ago
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
4 years ago
Stephane Nicoll 35e069e2cd Polish "Add health indicator for Cassandra that uses the CqlSession"
See gh-20887
4 years ago
Stephane Nicoll ce4ef5ed81 Merge branch '2.3.x'
Closes gh-21918
4 years ago
Stephane Nicoll 7500f0f22d Add section about Kafka metrics support
Closes gh-21910
4 years ago
Stephane Nicoll 631a5dddd1 Merge branch '2.3.x'
Closes gh-21915
4 years ago
Stephane Nicoll 676cd10dbf Fix encoding of @Bean in reference documentation
Closes gh-21908
4 years ago
Phillip Webb db0f085d40 Merge branch '2.3.x'
Closes gh-21765
5 years ago
Phillip Webb 47729be4e3 Polish 'Clarify documentation for probe ports'
See gh-21650
5 years ago
Hui Li e6ade05c2d Clarify documentation for probe ports
Update the reference documentation to provide a better description of
the port that should be used for Kubernetes probes.

See gh-21650
5 years ago
Andy Wilkinson a6eb4da2ad Merge branch '2.3.x'
Closes gh-21763
5 years ago
Andy Wilkinson 96ae4864a2 Merge branch '2.2.x' into 2.3.x
Closes gh-21762
5 years ago
Andy Wilkinson 2de906caf7 Polish "Clarify loss of defaults when adding custom mapping"
See gh-20716
5 years ago
Norio 9f009e4445 Clarify loss of defaults when adding custom mapping
See gh-20716
5 years ago
Andy Wilkinson 52a5425acf Merge branch '2.3.x'
Closes gh-21761
5 years ago
Andy Wilkinson a97c63661a Merge branch '2.2.x' into 2.3.x
Closes gh-21760
5 years ago
Andy Wilkinson 4a0e8217f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21759
5 years ago
Andy Wilkinson 5dce945e29 Document dispatcher-types configuration for secured error pages
Closes gh-19293
5 years ago
Andy Wilkinson 020a47ba3e Document support for Gradle 5
Closes gh-15358
5 years ago
Phillip Webb 6e71994b6b Merge branch '2.3.x'
Closes gh-21745
5 years ago
Phillip Webb abaca95467 Merge branch '2.2.x' into 2.3.x
Closes gh-21744
5 years ago
Phillip Webb bfe1c281f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21743
5 years ago
Phillip Webb 70e0a27949 Drop the use of the term "white list"
Closes gh-21737
5 years ago
Stephane Nicoll bb86d2b3d4 Merge branch '2.3.x' 5 years ago
Stephane Nicoll 79a5ca2941 Merge branch '2.2.x' into 2.3.x 5 years ago
Stephane Nicoll eb38eeaf30 Polish 5 years ago
Andy Wilkinson 8fb7a6cace Remove JUnit 5's vintage engine from spring-boot-starter-test
Closes gh-21625
5 years ago
Stephane Nicoll 721399bdc4 Merge branch '2.3.x' 5 years ago
Toshiaki Maki 0cd526c266 Fix event name in documentation
See gh-21692
5 years ago
Andy Wilkinson d3ef6f2382 Prepare 2.3.x branch 5 years ago
Brian Clozel 18e0db6326 Document health probes config property in Actuator section
This commit mentions the `management.health.probes.enabled`
configuration property in the Kubernetes Probes section of the Actuator
chapter.

Enabling this property is required if we need to expose Kubernetes
Probes in a non-Kubernetes environment.

Fixes gh-21505
5 years ago
Brian Clozel 525e03d3b5 Add welcome page support for Spring WebFlux
This commit adds the support for static and templated welcome pages with
Spring WebFlux. The implementation is backed by a `RouterFunction`
that's serving a static `index.html` file or rendering an `index` view.

Closes gh-9785
5 years ago
Madhura Bhave 146ebf107c Merge branch '2.2.x'
Closes gh-21529
5 years ago
Moritz do Rio Schulze 1e168a2145 Fix typo in section 4.30.6
See gh-21485
5 years ago
Andy Wilkinson 3f56f97e03 Merge branch '2.2.x'
Closes gh-21472
5 years ago
Andy Wilkinson 4a896f2272 Merge branch '2.1.x' into 2.2.x
Closes gh-21471
5 years ago
Andy Wilkinson fdc63d71fe Use HTTPS when linking to groovy-lang.org
Closes gh-21466
5 years ago
Brian Clozel 42d07a7acd Fix published Maven POMs
Prior to this commit, the published Maven POMs would not pass the Maven
Central mandatory checks.

This commit adds the missing project name and description metadata for
most artifacts. The Spring Boot Gradle plugin artifact was also missing
this information and this is now added in the plugin metadata itself.
This is also updating the project page URL which is now hosted directly
on spring.io.

Fixes gh-21457
5 years ago
Andy Wilkinson 96bd9daab7 Compile doc's Java examples and allow them to be imported into Eclipse
Closes gh-21445
5 years ago
Phillip Webb 194c9fac64 Polish 'Add @WebServiceClientTest slice test support'
See gh-17274
5 years ago
Madhura Bhave 4d521e712f Merge branch '2.2.x' 5 years ago
Madhura Bhave 27ada029b5 Revert "Expose property to configure OAuth2 provider configurationMetadata"
This reverts commit 7b79029949.

See gh-21375
5 years ago
Andy Wilkinson 9e569cf1b0 Remove non-user-facing packages from the javadoc
Closes gh-20517
5 years ago
Andy Wilkinson a03426af57 Configure the Asciidoctor revnumber in a central location
See gh-20934
5 years ago
Madhura Bhave 376098d080 Set asciidoctor revnumber to null
Closes gh-20934
5 years ago
Madhura Bhave 453ca01338 Merge branch '2.2.x'
Closes gh-21429
5 years ago
Madhura Bhave 7b79029949 Expose property to configure OAuth2 provider configurationMetadata
Closes gh-21375
5 years ago
Andy Wilkinson 0bb687717c Auto-configure a lifecycle processor with configurable timeout
Closes gh-21347
5 years ago
Andy Wilkinson 240898121f Use SmartLifecycle for graceful web server shutdown
Closes gh-21325
5 years ago
Richard North aed4f58403 Fix capitalization of Testcontainers in Howto docs
See gh-21417
5 years ago
Madhura Bhave 3e3ff26129 Add a testcontainers section in the reference docs
Closes gh-20734
5 years ago
Madhura Bhave 7468f574d7 Add more context to the Kubernetes container lifecycle documentation
Closes gh-20932
5 years ago
Madhura Bhave a4254f7b30 Document that graceful shutdown requires Tomcat 9.0.33
Closes gh-20886
5 years ago
Stephane Nicoll d067cc6ae2 Merge branch '2.2.x'
Closes gh-21367
5 years ago
Stephane Nicoll c3eaa6dc54 Merge branch '2.1.x' into 2.2.x
Closes gh-21366
5 years ago
Stephane Nicoll efc9978362 Document use case of splitting auto-configuration and starter
Closes gh-20686
5 years ago
dreis2211 71c8d5cda1 Update link to new Spring Security docs location
See gh-21040
5 years ago
Phillip Webb 5ae623c43a Polish 'Add Period converter support'
Polish period converter support, primarily by changing
`PeriodStyle` to parse and print periods that include
more than one unit.

See gh-21136
5 years ago
Katada, Junya bc2a83062b Fix duplicate slashes in URL links
See gh-21108
5 years ago
Madhura Bhave 8ec16bd027 Restrict wildcard pattern support for configuration files
This commit restricts how wildcards can be used in search
locations for property files. If a search location contains
a pattern, there must be only one '*' and the location should
end with a '*/'. For search locations that specify the file
name, the pattern should end with '*/<filename>'.

The list of files read from wildcard locations are now sorted
alphabetically according to the absolute path of the file.

Closes gh-21217
5 years ago
Phillip Webb ad1248e4ec Replace "folder" with "directory"
Consistently use the term "directory" instead of "folder"

Closes gh-21218
5 years ago
Andy Wilkinson fb33610027 Automatically create developmentOnly configuration
Previously, the developmentOnly configuration, typically used for
Devtools, had to be declared manually. The BootJar and BootWar tasks
then had a property, excludeDevtools, that could be used to control
whether or not Devtools would be excluded from the executable archive.

This commit updates the reaction to the Java plugin being applied to
automatically create the developmentOnly configuration. The classpaths
of bootJar and bootWar are then configured not to include the contents
of the developmentOnly configuration. As a result of this, the
excludeDevtools property is no longer needed and has been deprecated.
Its default has also been changed from true to false to make it easy
to opt in to Devtools, when configured as a development-only
dependency, being included in executable jars and wars by adding
developmentOnly to the classpath of the archive task.

Closes gh-16599
5 years ago
Brian Clozel dfdee3e00e Revert "Add support for Reactor Netty Micrometer metrics"
This commit removes the support for Reactor Netty metrics since it
seems that Spring Boot should not use this feature:

* HTTP metrics are already covered by WebFlux
* TCP metrics are only meant to TCP server/clients
* allocator metrics are already provided by Netty and there is
no specific API to enable them here.

Closes gh-19388
5 years ago
Brian Clozel 956afdcf97 Add support for Reactor Netty Micrometer metrics
This commit enables the production of TCP and buffer allocator metrics
for Reactor Netty, client and server.

When applications use auto-configured server
(`NettyReactiveWebServerFactory`) and client (through
`WebClient.Builder`) instances, metrics will be enabled.

Note that HTTP metrics are not enabled here, since similar metrics are
already produced at the WebFlux level. Also, to avoid cardinality
explosion of metrics (through the URI tag), Reactor Netty offers
configurable infrastructure to deduplicate URI tags by turning expanded
URI instances into templated URIs. This is not targeted for Spring
usage.

Closes gh-19388
5 years ago
Stephane Nicoll 85a3fcfb5e Merge branch '2.2.x'
Closes gh-21119
5 years ago
Stephane Nicoll 80410997ec Polish "Enhance Database initialization how to guide"
See gh-21077
5 years ago
nikmanzotti f2b10be01e Enhance Database initialization how to guide
See gh-21077
5 years ago
Johnny Lim ef567388c1 Polish
See gh-21110
5 years ago
dreis2211 c2fb95151b Fix link to R2DBC Query in docs
See gh-21079
5 years ago
dreis2211 5eb5bf0a2d Polish
See gh-21009
5 years ago
Andy Wilkinson d53be18582 Deprecate support for Bitronix
Closes gh-20823
5 years ago
Phillip Webb 6ccba24494 Merge branch '2.2.x'
Close gh-20507 in 2.3.0.RC1
5 years ago
Phillip Webb 581ce09f88 Merge branch '2.1.x' into 2.2.x
Closes gh-21106
5 years ago
Phillip Webb 416cfc2c86 Improve @Value documentation
Improve "@ConfigurationProperties vs. @Value" documentation with the
recommendation that kebab-case is used with the `@Value` annotation.

Closes gh-20507
5 years ago
Andy Wilkinson d05c973e71 Polish 5 years ago
Stephane Nicoll fe90b2a251 Rename Service Level Agreement to Service Level Objective
This commit harmonizes our integration of Micrometer's Service Level
objectives.

Closes gh-21076
5 years ago
Phillip Webb 48821bccb7 Merge branch '2.2.x'
Closes gh-21092
5 years ago
Phillip Webb d1649fbb9a Merge branch '2.1.x' into 2.2.x
Closes gh-21091
5 years ago
Phillip Webb e0f94f54ac Add "Health as Gauge" how-to documentation
Add how-to documentation describing how health information can be
exported to a Micrometer Gauge.

Closes gh-18329
5 years ago
Phillip Webb 3e3587e0fb Polish 5 years ago
Madhura Bhave 0699116e95 Merge branch '2.2.x'
Closes gh-21075
5 years ago
Madhura Bhave 16ac968f69 Relocate section on configuring DevTools' file system watcher
Closes gh-20895
5 years ago
Madhura Bhave 7755e0c3e2 Fix Dockerfile example in docs
Fixes gh-21020
5 years ago
Madhura Bhave 2cac264624 Merge branch '2.2.x'
Closes gh-21049
5 years ago
Madhura Bhave af6d538781 Add support for initializing nested object when nothing bound
When using constructor binding, if no properties are bound to
a nested property, the top-level instance will be created with a
null value for the nested property.
This commit introduces support for an empty `@DefaultValue` which
indicates that an instance of the nested property must be created
even if nothing is bound to it. It honors any `@DefaultValue`
annotations that the nested property might have in its constructor.

Closes gh-18917
5 years ago
dreis2211 320b328610 Fix anchors in links to Maven and Gradle plugin docs
See gh-21033
5 years ago
Phillip Webb e533ce3826 Merge branch '2.2.x'
Closes gh-21028
5 years ago
Phillip Webb d27e437ddc Merge branch '2.1.x' into 2.2.x
Closes gh-21027
5 years ago
Phillip Webb f0ec571b2e Document relaxed binding from the environment
Update the reference documentation with more details about how relaxed
binding works against environment variables.

Closes gh-18215
5 years ago
Phillip Webb 636a47641a Merge branch '2.2.x'
Closes gh-21026
5 years ago
Phillip Webb 55f0af7f0f Merge branch '2.1.x' into 2.2.x
Closes gh-21025
5 years ago
Phillip Webb 359b508077 Document devtool property file profile restrictions
Closes gh-19972
5 years ago
Phillip Webb 3c388cf48e Fix typo 5 years ago
Johnny Lim 5fad43ec40 Polish
See gh-20973
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
Johnny Lim cb320288a4 Polish
See gh-20931
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 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
Phillip Webb d9fb4dd477 Don't use monospacing in documentation headings
Closes gh-20875
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 ef9611e30e Document executable-jar index files
Update the executable jar appendix to include details of the index
files.

Closes gh-20859
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
Stephane Nicoll 888a81beba Migrate Kafka metrics to KafkaClientMetrics
Closes gh-20838
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
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 f4e6d7c1cf Fix links to Maven Plugin's documentation in reference guide
Closes gh-20818
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
Andy Wilkinson 84e16d55ea Raise the minimum supported version of Gradle 6 to 6.3
Closes gh-20532
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
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 722d37468b Rationalize RabbitProperties
Closes gh-18830
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 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
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
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
dreis2211 f95e9543dc Fix typos in packaging docs
See gh-20630
5 years ago
Phillip Webb 0717de723f Polish 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 3cc0ab1583 Polish reference docs on Kubernetes Probes
See gh-19593
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 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
Johnny Lim cc18b91723 Fix "Building Docker Images" section level
See gh-20608
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
Brian Clozel b30e5a60c5 Polish
See gh-19593
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
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
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 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
Johnny Lim 8526e66939 Polish
See gh-20498
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 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
Artem Bilan 3967e76b9b Auto-Configure RSocket support for Spring Integration
This commit adds a new auto-configuration for RSocket support in Spring
Integration.

Given an application with `spring-messaging`, `spring-integration-rsocket`
and RSocket dependencies, developers are now able to leverage Spring
Integration features with RSocket.

It is now possible to configure an RSocket server with
`"spring.rsocket.server.*"` properties and let it use
`IntegrationRSocketEndpoint` or `RSocketOutboundGateway` components to
handle incoming RSocket messages. This infrastructure can handle Spring
Integration RSocket channel adapters and `@MessageMapping` handlers
(given `"spring.integration.rsocket.server.message-mapping-enabled"`is
configured.

If the `"spring.integration.rsocket.client.host"` and
`"spring.integration.rsocket.client.port"` (for TCP protocol), or
`"spring.integration.rsocket.client.uri"`  (for WebSocket) is configured
then a `ClientRSocketConnector` will be configured accordingly.

Closes gh-18834

Co-authored-by: Brian Clozel <bclozel@pivotal.io>
5 years ago
Stephane Nicoll ea66940be1 Document R2DBC support
Closes gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
5 years ago
Stephane Nicoll 4c2ff9c314 Merge branch '2.2.x'
Closes gh-20315
5 years ago
Yoo In Keun ec20246415 Fix typos in documentation
See gh-20313
5 years ago
Madhura Bhave 15cd590f7f Allow users to opt out of including the layer tools in a layered jar
For Maven, the layer configuration is now an additional configuration
option instead of a layout type.

Closes gh-19866
5 years ago
Scott Frederick 6017c1ccac Update MongoDB auto-configuration documentation. 5 years ago
Stephane Nicoll 363edfa00c Merge branch '2.2.x'
Closes gh-20221
5 years ago
hbellahc d890f1f6d8 Document missing reference to DataSourceHealthIndicator
See gh-20216
5 years ago
Stephane Nicoll ddeac66ca2 Merge branch '2.2.x'
Closes gh-20186
5 years ago
Stephane Nicoll 40d1727cc5 Polish "Document sanitized keys and uri sanitization behavior"
See gh-20169
5 years ago
Juzer Ali 30f7f9c9c4 Document sanitized keys and uri sanitization behavior
See gh-20169
5 years ago
Andy Wilkinson 903a4a48e8 Fix configuration property references in the reference docs
Previously, the configprop macro was being used in the source but the
extension that implements the macro was not available to Asciidoctor.
This led to the references not being checked at build time and the
macro being left as-is in the rendered documentation.

This commit updates the dependencies that are available to Asciidoctor
to include the extension and the projects which define the
configuration properties referenced in the documentation.

Closes gh-20149
5 years ago
Andy Wilkinson 420af17570 Merge branch '2.2.x'
Closes gh-20148
5 years ago
dreis2211 92b4ba6367 Fix structuring your code link in multi-page HTML documentation
Closes gh-19953
5 years ago
Stephane Nicoll b21a41cde1 Merge branch '2.2.x'
Closes gh-20124
5 years ago
Stephane Nicoll d1f4a1821c Merge branch '2.1.x' into 2.2.x
Closes gh-20123
5 years ago
Stephane Nicoll b0aba9ed67 Document how to register a blocking health contributor with reactive
Closes gh-19707
5 years ago
Johnny Lim 6818279751 Fix typo
See gh-20049
5 years ago
Madhura Bhave 9382cd4db1 Polish wildcard location documentation 5 years ago
Madhura Bhave 3f9d0058ad Document new Docker-related features
Closes gh-19868
5 years ago
Madhura Bhave e64a145ef0 Add support for wildcard locations for properties and YAML files
Closes gh-19909
5 years ago
Stephane Nicoll c4daff7225 Polish "Upgrade to MongoDB Java Driver 4.0 beta1"
See gh-19960
5 years ago
Stephane Nicoll 52659b1df4 Merge branch '2.2.x'
Closes gh-20013
5 years ago
Johnny Lim 6ef288f45b Polish samples in doc
See gh-20004
5 years ago
dreis2211 fac6f08ca3 Use new AssertJ duration assertions
See gh-19985
5 years ago
Stephane Nicoll 0516520b7e Polish "Fix scope of CqlSessionBuilder bean"
See gh-19899
5 years ago
Stephane Nicoll 2a01c0262b Merge branch '2.2.x'
Closes gh-19958
5 years ago
Stephane Nicoll 9d0918bb2e Merge branch '2.1.x' into 2.2.x
Closes gh-19957
5 years ago
Pascal Verdage 930ec51968 Fix typo
See gh-19956
5 years ago
Stephane Nicoll 07a1783572 Polish "Introduce appendix section with version properties"
See gh-19898
5 years ago
dreis2211 65394582f6 Introduce appendix section with version properties
With the introduction of Gradle we lost the list of version properties
that were previously in the spring-boot-dependencies POM and were also
linked inside the documentation. This commit introduces an appendix
section in the docs and links the appropriate places to the new section
to restore discoverability.

See gh-19898
5 years ago
dreis2211 b49e01f67a Fix broken documentation links
See gh-19936
5 years ago
Stephane Nicoll 51f6256035 Merge branch '2.2.x' 5 years ago
Stephane Nicoll 9ca15ee00d Fix broken documentation links
See gh-19936
5 years ago
dreis2211 42e34673a6 Remove obsolete files
See gh-19896
5 years ago
Stephane Nicoll eb9b1972cf Adapt Cassandra documentation of v4 driver upgrade
See gh-18621
5 years ago
Stephane Nicoll 2b06a423d0 Merge branch '2.2.x'
Closes gh-19873
5 years ago
Stephane Nicoll c77d4c07d7 Merge branch '2.1.x' into 2.2.x
Closes gh-19872
5 years ago
Stephane Nicoll 650e55c242 Polish "Encourage use of SpringBootApplication"
See gh-19855
5 years ago
protyay 3131616c5a Encourage use of SpringBootApplication
See gh-19855
5 years ago
Phillip Webb e0013454b5 Use parentheses when declaring dependencies
Update all dependencies declarations to use the form `scope(reference)`
rather than `scope reference`.

Prior to this commit we declared dependencies without parentheses unless
we were forced to add them due to an `exclude`.
5 years ago
Phillip Webb 0209cd3e4c Polish quote form used in Gradle scripts
Replace Gradle single quote strings with the double quote form
whenever possible. The change helps to being consistency to the
dependencies section where mostly single quotes were used, but
occasionally double quotes were required due to `${}` references.
5 years ago
Phillip Webb bfd2ca7fd9 Polish Gradle expression references
Expand all expression `$` references to the full `${...}` form.
5 years ago
dreis2211 991bcf5ce4 Revisit documentation that mentions Gradle "compile" configuration
See gh-19797
5 years ago
Stephane Nicoll 67bba7c64a Merge branch '2.2.x'
Closes gh-19820
5 years ago
Stephane Nicoll 3dba4c8f4e Polish "Document RedisCacheManagerBuilderCustomizer"
See gh-19819
5 years ago
Dmytro Nosan 61d8bacd23 Document RedisCacheManagerBuilderCustomizer
See gh-19819
5 years ago
dreis2211 dcdadb9aa7 Make Tomcat javadoc link version dependent
See gh-19632
5 years ago
Andy Wilkinson 443d1a6a21 Upgrade to Liquibase 3.8.5
Closes gh-19754
5 years ago
Brian Clozel 711391cf2f Move spring.http.* config properties namespace
Closes gh-18827
5 years ago
Scott Frederick c789592e26 Remove support for deprecated Elasticsearch Jest client
Closes #19676
5 years ago
Stephane Nicoll 738ba15d0c Merge branch '2.2.x'
Closes gh-19679
5 years ago
Stephane Nicoll 0c7dae0d51 Remove duplicate note in Hazelcast section of reference guide
Closes gh-19678
5 years ago
Brian Clozel b780e5247c Remove support for Elasticsearch transport client
The Elasticsearch transport client has been deprecated since Spring Boot
2.2.0 and is about to be removed from Spring Data Elasticsearch and
Elasticsearch itself in their next major releases.

The available REST client support variants are now the preferred way of
using Elasticsearch features.

Closes gh-19668
5 years ago
Andy Wilkinson e415f759a2 Raise the minimum supported version of Gradle to 5.6
Closes gh-18777
5 years ago
Stephane Nicoll b97b0c1d7b Merge branch '2.2.x'
Closes gh-19635
5 years ago
dreis2211 9fe114ebad Update copyright in legal doc section
See gh-19621
5 years ago
Andy Wilkinson ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
5 years ago
Andy Wilkinson c584334f5e Merge branch '2.2.x'
Closes gh-19592
5 years ago
Andy Wilkinson ccf4e1ad44 Merge branch '2.1.x' into 2.2.x
Closes gh-19591
5 years ago
dreis2211 2b06f17c69 Fix links to external types in javadoc
See gh-19581
5 years ago
dreis2211 34419eda38 Add micrometer-registry-stackdriver dependency for javadoc generation
See gh-19578
5 years ago
Stephane Nicoll 462442e7d2 Polish "Add Stackdriver metrics export support"
See gh-19528
5 years ago
Stephane Nicoll 47481464ff Merge branch '2.2.x'
Closes gh-19535
5 years ago
Rossen Stoyanchev f6947648c9 Improve Spring MVC auto-configuration section
See gh-19521
5 years ago
Stephane Nicoll 76a48885f8 Merge branch '2.2.x'
Closes gh-19516
5 years ago
Stephane Nicoll fd4829c2ea Merge branch '2.1.x' into 2.2.x
Closes gh-19515
5 years ago
dreis2211 9cbf5902dc Update some copyrights to 2020
See gh-19510
5 years ago
Stephane Nicoll 5d1c844f21 Merge branch '2.2.x'
Closes gh-19499
5 years ago
Stephane Nicoll a684ab8726 Merge branch '2.1.x' into 2.2.x
Closes gh-19498
5 years ago
Johnny Lim 27d7727d9f Polish doc
See gh-19491
5 years ago
Stephane Nicoll bb5e09882a Extract RabbitTemplate auto-configuration in a configurer
This commit movers the auto-configuration of RabbitTemplate to a
dedicated class that can be reused to create additional template with
similar settings.

CLoses gh-19440
5 years ago
Stephane Nicoll 1e38dd5531 Merge branch '2.2.x'
Closes gh-19461
5 years ago
Stephane Nicoll 4969ecc59a Polish contribution
See gh-19458
5 years ago
Girish Kulkarni 582a3b472d Fix file rotation documentation according to maxHistory new default
See gh-19458
5 years ago
Stephane Nicoll ada2d3904f Merge branch '2.2.x'
Closes gh-19452
5 years ago
Stephane Nicoll 1a8a76082b Merge branch '2.1.x' into 2.2.x
Closes gh-19451
5 years ago
Stephane Nicoll 2db2daeddf Clarify which part of @ConfigurationProperties is internal API
Closes gh-19199
5 years ago
Stephane Nicoll 2ee6621123 Merge branch '2.2.x'
Closes gh-19449
5 years ago
Stephane Nicoll aa54a47671 Merge branch '2.1.x' into 2.2.x
Closes gh-19448
5 years ago
Stephane Nicoll 8f9d9fa20e Clarify which caches are automatically bound to the metrics registry
See gh-19412
5 years ago
Stephane Nicoll f44fca95b0 Merge branch '2.2.x'
Closes gh-19447
5 years ago
Johnny Lim e0840b690c Add JMX note for Kafka consumer metrics
See gh-19446
5 years ago
Stephane Nicoll 68dc850a82 Execute batch jobs with ApplicationRunner
This commit migrates JobLauncherCommandLineRunner to an
ApplicationRunner implementation. The latter allows to parse option
arguments (i.e. `--spring.something=value`) and makes it easy to ignore
arguments that are not meant to be passed to batch jobs.

Closes gh-19442
5 years ago
Stephane Nicoll 22fcb954d4 Merge branch '2.2.x' 5 years ago
Stephane Nicoll 930a0ef748 Polish Spring Batch how-to guides
See gh-19211
5 years ago
Stephane Nicoll 326ad5e8e4 Merge branch '2.2.x'
Closes gh-19439
5 years ago
Stephane Nicoll 5f987a67f8 Polish "Improve Spring Batch coverage in reference documentation"
See gh-19211
5 years ago
Jay Bryant 6bd9b2ebc6 Improve Spring Batch coverage in reference documentation
See gh-19211
5 years ago
Stephane Nicoll e38ef6ef1f Merge branch '2.2.x'
Closes gh-19429
5 years ago
Johnny Lim 0bf359f4a2 Polish
See gh-19409
5 years ago
Brian Clozel 813c901905 Merge branch '2.2.x'
Closes gh-19425
5 years ago
Brian Clozel 82391a406a Polish
See gh-19424
5 years ago
Ferdinand Jacobs 4555123b7d Fix typo in RSocket docs
See gh-19424
5 years ago
Brian Clozel 1e117c704b Merge branch '2.2.x'
Closes gh-19404
5 years ago
Brian Clozel 979437398c Merge branch '2.1.x' into 2.2.x
Closes gh-19403
5 years ago
Brian Clozel 3e48e36e47 Improve docs on running apps behind proxies
Fixes gh-15046
5 years ago
Johnny Lim 8bbc7f7b67 Remove duplicate entry for Neo4jHealthIndicator
See gh-19377
5 years ago
Stephane Nicoll 58022d72f5 Merge branch '2.2.x'
Closes gh-19363
5 years ago
Stephane Nicoll c3ae8bcfdc Merge branch '2.1.x' into 2.2.x
Closes gh-19362
5 years ago
dreis2211 207a5c5022 Link consistently to Tomcat 9.0 docs
See gh-19340
5 years ago
Stephane Nicoll aa821151bb Polish "Detect DirContextAuthenticationStrategy bean"
See gh-19328
5 years ago
Andy Wilkinson 6a8d7218b6 Merge branch '2.2.x'
Closes gh-19310
5 years ago
Andy Wilkinson 9b0569cf81 Merge branch '2.1.x' into 2.2.x
Closes gh-19309
5 years ago
Andy Wilkinson bc53fe0344 Recommend mockito-inline for mocking and spying of CGLib proxies
This reverts commit 52050c173c.

See gh-17817
Closes gh-19020
5 years ago
Andy Wilkinson 9f1e760054 Merge branch '2.2.x'
Closes gh-19298
5 years ago
tongluyang 95aad5b556 Add missing closing parenthesis to the document
See gh-19218
5 years ago
Andy Wilkinson 10d593eeee Merge branch '2.2.x' 5 years ago
Andy Wilkinson 264d4f54ec Merge branch '2.1.x' into 2.2.x 5 years ago
Andy Wilkinson 38340522de Fix Asciidoc syntax 5 years ago
Andy Wilkinson 9b88edbcf9 Merge branch '2.2.x'
Closes gh-19153
5 years ago
Andy Wilkinson a2451a4f29 Merge branch '2.1.x' into 2.2.x
Closes gh-19152
5 years ago
Andy Wilkinson b46bb726ca Clarify limitations of @PropertySource
Closes gh-18900
5 years ago
Madhura Bhave 8488dcb754 Merge branch '2.2.x'
Closes gh-19210
5 years ago
Madhura Bhave 5b461843db Merge branch '2.1.x' into 2.2.x
Closes gh-19209
5 years ago
Madhura Bhave fcc790aa15 Document how properties are applied in JPA auto-config
Closes gh-15361
5 years ago
Stephane Nicoll 4efd6a4021 Merge branch '2.2.x'
Closes gh-19178
5 years ago
Stephane Nicoll e02ccd16bb Merge branch '2.1.x' into 2.2.x
Closes gh-19177
5 years ago
Johnny Lim 3df9fa6228 Add missing indentations for pom.xml in doc
See gh-19170
5 years ago
Stephane Nicoll 8888f75a41 Polish "Add dedicated namespace for RemoteIpValve properties"
See gh-18489
5 years ago
Stephane Nicoll 329352b865 Merge branch '2.2.x'
Closes gh-19155
5 years ago
Stephane Nicoll abe070051e Merge branch '2.1.x' into 2.2.x
Closes gh-19154
5 years ago
dreis2211 87caa0a331 Add missing health indicators to docs
See gh-19149
5 years ago
Madhura Bhave 4d050816aa Merge branch '2.2.x'
Closes gh-19153
5 years ago
Madhura Bhave c10c9934dd Merge branch '2.1.x' into 2.2.x
Closes gh-19152
5 years ago
Madhura Bhave 53da8da50a Clarify contradictory advice on the use of `@PropertySource`
In general we do not recommend using @PropertySource due to them being
added to the environment too late for auto-configuration to use them. This
commit updates the documentation to mention them in the list of external
sources along with a note.

Closes gh-18900
5 years ago
Madhura Bhave 7ce1079ada Merge branch '2.2.x'
Closes gh-19151
5 years ago
Madhura Bhave d52935e103 Merge branch '2.1.x' into 2.2.x
Closes gh-19150
5 years ago
Madhura Bhave 49e111aef5 Document logging of startup info
Closes gh-19026
5 years ago
Madhura Bhave e8a0d2d9d0 Merge branch '2.2.x' 5 years ago
Madhura Bhave 51478cabcd Fix typo 5 years ago
Andy Wilkinson 204a552c35 Update links from main reference docs to Maven Plugin docs
See gh-19080
5 years ago
Andy Wilkinson 3e2454f8c4 Replace the Maven Plugin's site with Asciidoctor documentation
Closes gh-19080

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
5 years ago
Stephane Nicoll 3d418263bc Merge branch '2.1.x' into 2.2.x
Closes gh-19032
5 years ago
dreis2211 355505d236 Fix syntax error in configuration metadata sample in docs
See gh-19028
5 years ago
Stephane Nicoll b842f16848 Polish "Use caps in docker file example for consistency"
See gh-19029
5 years ago
Dave Syer b95e8a4df6 Use caps in docker file example for consistency
See gh-19029
5 years ago
Stephane Nicoll d08b436735 Polish "Improve Deploying to Containers section"
See gh-18932
5 years ago
Guillaume Lours 6cf05aeb50 Improve Deploying to Containers section
See gh-18932
5 years ago
Andy Wilkinson 379ba0dc00 Support Gradle 6.0
Previously, our Gradle plugin was not tested against Gradle 6.0,
a number of deprecation warnings were output when using the plugin
with Gradle 6, and some functionality related to the application
plugin did not work as expected.

This commit tests the plugin against Gradle 6. It also avoids calling
deprecated APIs. The plugin is compatibile against Gradle 4.10 where
the deprecated APIs' replacements are not available so reflection is
used to call the replcaements. Lastly, the way in which the base name
of the boot distribution that is created when the application plugin
is applied has been modified to ensure that it is effective when using
Gradle 6.

Closes gh-18663
5 years ago
Madhura Bhave f9dc81558a Remove samples references from docs
Fixes gh-18904
5 years ago
Andy Wilkinson d8545bdead Merge branch '2.1.x'
Closes gh-18887
5 years ago
Andy Wilkinson 8b62f448ba Improve documentation on using Jersey alongside Spring MVC
Previously, the documentation did not provide any guidance on using
Jersey alongside Spring MVC or any other web framework.

This improves the documentation in two ways:

1. It notes that, in the presence of both Jersey and Spring MVC, the
   Actuator will prefer Spring MVC for exposing HTTP endpoints.
2. It adds a how-to describing how to configure Jersey to forward
   requests for which it has no handler on to the rest of the filter
   chain. When Spring MVC is the other framework, this allows them to
   be handled by its dispatcher servlet.

Closes gh-17523
5 years ago
Andy Wilkinson 571e4640de Merge branch '2.1.x'
Closes gh-18877
5 years ago
Andy Wilkinson bd06a91ac0 Recommend more overrides when using starter parent
This commit is a continuation of the work done in 987a5f81. In
addition to developers and licenses that are covered in the earlier
commit, a number of other settings are still inherited from the
starter parent. This commit updates the documentation to show them
being overridden as well.

Closes gh-18532
5 years ago
Stephane Nicoll d331f28222 Merge branch '2.1.x'
Closes gh-18885
5 years ago
Stephane Nicoll 4d1373c94d Polish "Support amqps:// URIs in spring.rabbitmq.addresses"
See gh-18808
5 years ago
Andy Wilkinson a65374b16b Merge branch '2.1.x'
Closes gh-18880
5 years ago
Andy Wilkinson cb76502a44 Document that JUL is not bridged into SLF4J when deployed to a container
Closes gh-16062
5 years ago
Andy Wilkinson 2c309c5d93 Merge branch '2.1.x'
Closes gh-18879
5 years ago
Andy Wilkinson 1c6f2af475 Clarify how to configure a Filter's order
Closes gh-18266
5 years ago
Andy Wilkinson abeafb325e Merge branch '2.1.x'
Closes gh-18877
5 years ago
Andy Wilkinson 987a5f8103 Recommend overriding licences and developers when using starter parent
Publishing to Maven Central requires spring-boot-starter-parent to
declare its license and developers. When a user then uses
spring-boot-starter-parent as their project's parent, these values
are inherited and this is almost certainly unwanted.

This commit updates the documentation to recommend and demonstrate
overriding the license and developers that are inherited from the
starter parent.

Closes gh-18532
5 years ago
Andy Wilkinson 36b1f65056 Merge branch '2.1.x'
Closes gh-18876
5 years ago
Andy Wilkinson 89e050d722 Document security risks of DevTools' remote support more clearly
Previously, the security risks and our recommendations on how to
mitigate them were not documented as clearly as they could have been.
This commit makes some changes to try to address this:

1. The security risk is now noted at the beginning of the section
2. The recommendation to use SSL is now documented more prominently
   and an alternative recommendation to only use remote support on
   a trusted network has been added.
3. The example secret has been removed to prevent copy and paste
4. A recommendation to use a secret that is unique and strong has been
   added

Closes gh-18825
5 years ago
Stephane Nicoll da24a66ce6 Merge branch '2.1.x'
Closes gh-18875
5 years ago
Stephane Nicoll 5863a75c3c Polish "Document Settings as jooq supported auto-configuration type"
See gh-18870
5 years ago
Jens Teglhus Møller c34516cd9e Document Settings as jooq supported auto-configuration type
See gh-18870
5 years ago
Andy Wilkinson 07ca7747fa Clarify what an endpoint needs to be auto-configured
Previously, the endpoint tables in the documentation include an
"Enabled by default" column that listed whether or not an endpoint
was enabled by default. This resulted in some confusion as an endpoint
could be listed as being enabled by default but not actually be
enabled as the requirements for it being auto-configured has not been
met.

This commit removes the "Enabled by default" column and replaces it,
where needed, with some extra information in the "Description"
column that describes what is needed for the endpoint to be
auto-configured.

Closes gh-18633
5 years ago
Andy Wilkinson e26d5d95a8 Do not enable @ConfigurationPropertiesScan be default
In 2.2.0, @ConfigurationPropertiesScan was enabled by default.
Unfortunately, this had the unexpected side-effect of breaking
conditional enablement of a @ConfigurationProperties class via
@EnableConfigurationProperties if the @ConfigurationProperties class
was in a package covered by scanning.

This commit remove @ConfigurationPropertiesScan from
@SpringBootApplication so that it is no longer enabled by default.
2.1.x users who rely upon such conditional enablement of
@ConfigurationProperties classes can now upgrade to 2.2.x without
having to make any changes. Users who do not have such a need and are
in a position to use configuration properties scanning can now opt-in
by adding @ConfigurationPropertiesScan to their main application class
alongside @SpringBootApplication.

Closes gh-18674
5 years ago
Brian Clozel b7f59eb7cb Add config property for webflux codec maxInMemorySize
This commit creates a new configuration property
`spring.codec.max-in-memory-size` which configures the maximum
amount of data to be buffered in memory by codecs (both client and
server).

This property has no default value - it will let Spring Framework handle
the default behavior, currently enforcing a 256KB for provided codecs.

Fixes gh-18828
5 years ago
Stephane Nicoll 2d0a235c52 Add "Deploying to Containers" dedicated section
Closes gh-18818
5 years ago
Stephane Nicoll a664eadb9a Merge branch '2.1.x'
Closes gh-18756
5 years ago
wwjay9 bd77c170f2 Fix OAuth2 Client redirect-uri references
See gh-18752
5 years ago
Madhura Bhave 25077de0b3 Merge branch '2.1.x'
Closes gh-18735
5 years ago
Madhura Bhave 593eca7998 Emphasize need for quotes around YAML bracket notation
Closes gh-18690
5 years ago
Madhura Bhave bc3c3232c2 Merge branch '2.1.x'
Closes gh-18734
5 years ago
Madhura Bhave e59a643e20 Emphasize the need of @Valid on nested configuration properties
Closes gh-18198
5 years ago
Andy Wilkinson 9b039c491f Merge branch '2.1.x'
Closes gh-18726
5 years ago
Andy Wilkinson d4cd03ebd8 Document need for micrometer-jersey2 dependency to get Jersey metrics
Closes gh-18622
5 years ago
Philippe De Neve 8f990d97ab Polish documentation
* Remove double occurrence of InfluxDbHealthIndicator.
* Fix JUnit 5 `@ExtendWith` references
* Use consistent casing of HtmlUnit.

See gh-18718
5 years ago
Stephane Nicoll 8eecc911fb Merge branch '2.1.x'
Closes gh-18713
5 years ago
nkjackzhang 6ef39d6b91 Fix typos
See gh-18705
5 years ago
Stephane Nicoll 89d903d89a Fix typo in devtools example
Closes gh-18679
5 years ago
Stephane Nicoll fd94608f73 Polish "Restore proxying of @Bean methods in @TestConfiguration"
See gh-18675
5 years ago
Andy Wilkinson 2cdf801e7f Add a note to the docs about combining multiple security components
Previously, the documentation did not describe how to combine
multiple security components when one component's
WebSecurityConfigurerAdapter or SecurityWebFilterChain would cause
the other components' beans of the same type to back off.

This commit adds a note that such cases should be handled by the user
defining their own WebSecurityConfigurerAdapter or
SecurityWebFilterChain that configures the use of all of the
components as required.

Closes gh-18507
5 years ago
Brian Clozel e4fa9ce8c6 Deprecate server.connection-timeout property
Prior to this commit, all supported servers would share the same
configuration property `server.connection-timeout`. Unfortunately, in
many cases the behavior of this timeout changes depending on the server.
From actual connection setup timeout, to detecting and closing idle
connections, this property cannot be properly translated from one server
implementation to another.

This commit deprecates this configuration property and introduces server
specific properties:

* `server.jetty.connection-idle-timeout`
(Time that the connection can be idle before it is closed.)
* `server.netty.connection-timeout`
(Connection timeout of the Netty channel.)
* `server.tomcat.connection-timeout`
(Amount of time the connector will wait, after accepting a connection,
for the request URI line to be presented.)
* `server.undertow.no-request-timeout`
(Amount of time a connection can sit idle without processing a request,
before it is closed by the server.)

`server.connection-timeout` is now deprecated and will be removed in a
future release.

Fixes gh-18473
5 years ago