This commit deprecates the few 'enabled' flags that control whether
certain meter binders are registered in the context.
Metrics auto-configuration for the JVM, Logback and System-related
information have been moved to individual auto-configurations so that
they can be excluded rather than using the now deprecated flag.
This harmonizes our policy with regards to disabling behaviour,
especially since other similar auto-configurations do not have such
flag.
Closes gh-13408
Because `HttpPutFormContentFilter` has been deprecated in Spring
Framework 5.1, this commit updates the auto-configuration to replace it
with the new `FormContentFilter`. This new filter is building on the
previous one and supports HTTP DELETE requests as well.
Both filters should not be used in addition, so the former
configuration has been removed. This commit also adds configuration
metadata to let developers know about the configuration key change.
Closes: gh-13363
In Spring Data Lovelace, repositories' bootstrap mode can be
configured via @EnableJpaRepositories. This commit adds support for
configuring the mode via the environment rather than having to use
the annotation. Additionally, when deferred or lazy bootstrapping is
being used, the LocalContainerEntityManagerFactoryBean is configured
to use a bootstrap executor. This allows JPA's initialization to be
performed on a separate thread, allowing the rest of application
context initialization to proceed in parallel.
Closes gh-13833
Since SPR-16946, Spring Framework revisited the DEBUG logging output
developers get while working on Spring MVC and Spring WebFlux
applications.
This commit aligns to those changes where DEBUG output was produced
in Spring Boot (especially in `DefaultErrorWebExceptionHandler`).
This also enables DEBUG logging on the related packages when running an
application with Spring Boot Developer Tools, providing a better
development experience.
This is also adding the new `spring.insights.web.log-request-details`
configuration property, which logs additional information about the
incoming requests at the DEBUG and TRACE levels. Since that information
can be sensitive (e.g. credentials, tokens, etc.), this property is not
enabled by default nor activated by the Developer Tools.
Closes: gh-13511
This commit adds support for providing a default ThreadPoolTaskScheduler
with sensible defaults. A new TaskSchedulerBuilder is provided with
defaults from the `spring.task.scheduler.*` namespace and can be used
to create custom instances.
If no custom `TaskScheduler` bean is present, `@EnableScheduling` now
uses the auto-configured task scheduler.
Closes gh-1397
This commit makes sure to use a configurable timeout to check if the
Couchbase cluster is up, rather than relying on the default that can be
quite long.
Closes gh-13879
This commit ensures that the new "spring.jmx.unique-names" property
deprecates the Endpoint's specific property as they share the same goal.
If both are set with an incompatible value, an exception is thrown
inviting the user to update their configuration.
Closes gh-13990