Skip to content

Spring Boot 2.2.0 M5 Release Notes

Phillip Webb edited this page Nov 13, 2024 · 1 revision

Spring Boot 2.2.0 M5 Release Notes

For changes in earlier milestones, please refer to:

Upgrading from Spring Boot 2.1

See instructions in the 2.2.0.M1 release notes for upgrading from Spring Boot 2.1.

HttpHiddenMethodFilter disabled by default

The filter that handles the _method request parameter is now disabled by default as it causes early consumption of a request body if the body may contain parameters. This can be restored by setting either spring.webflux.hiddenmethod.filter.enabled or spring.mvc.hiddenmethod.filter.enabled to true.

@ConfigurationProperties scanning disabled in slice tests

@ConfigurationProperties-annotated types are no longer scanned in slice tests unless imported explicitly. This restores the behaviour that slice tests should only scan what is described in the documentation.

New and Noteworthy

Tip
Check the configuration changelog for a complete overview of the changes in configuration.

Java 13 support

Spring Boot 2.2.0.M5 also builds against Java 13 early access.

Plain text support for Thread dump endpoint

The threaddump actuator endpoint can now return a thread dump in plain text that is compatible with both Thread Dump Analyzer and https://fastthread.io.

Configurable converters for Actuator endpoint input parameters

Input parameters of an Actuator @Endpoint can be managed using custom @EndpointConverter-annotated converters.

Callback for Redis cache configuration

The RedisCacheManager configuration has been improved recently and a RedisCacheManagerBuilderCustomizer bean allows you to get a handle to the builder before it is used to configure an immutable RedisCacheManager.

Qualifier for Spring Batch datasource

In an environment with multiple data sources, A DataSource bean can be qualified with @BatchDataSource to indicate it is the one to be used by Spring Batch.

Build info repeatable output

The build info goal has an extra time property that allows to configure how build.time is handled. It can be disabled completely or set to a fixed time to make the output of build.properties repeatable.

Health indicator for Hazelcast

An HealthIndicator is now provided for Hazelcast.

Idle jdbc connections metrics

It is now possible to track the total size of a connection pool by tracking the size and idle metrics. If you have a custom DataSourcePoolMetadata implementation, consider implementing the getIdle method.

Dependency Upgrades

Spring Boot 2.2.0.M5 moves to new versions of several Spring projects:

  • Spring Framework 5.2.0.RC1

  • Reactor Dysprosium-M3

  • Spring AMQP 2.2.0.M4

  • Spring Data Moore-RC2

  • Spring Integration 5.2.0.M4

  • Spring Kafka 2.3.0.M4

  • Spring Security 5.2.0.M4

  • Spring Session Corn-M3

Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:

  • Jersey 2.29 as well as jetty-spring5 support

  • Jedis 3.1

Miscellaneous

In addition to the changes listed above, there have also been lots of minor tweaks and improvements including:

  • The application will fail fast if spring.config.location specifies a file with an extension that no PropertySourceLoader can read.

  • The layout to use to repackage the application can be set on the command line with Maven using the spring-boot.repackage.layout property.

  • RestTemplateBuilder#defaultHeader accepts more than one value.

  • Custom resource handlers can serve a favicon.

  • Kafka’s RecordInterceptor is detected and associated to the auto-configured listener container.

  • YAML configuration can now use on or off for boolean types.

  • Actuator discovery page is now available on / when using a separate management port.

  • @WebMvcTest now scans HandlerInterceptor beans.

  • @WebFluxTest scans WebFilter beans.

Deprecations in Spring Boot 2.2.0 M5

  • Joda time support is deprecated in favour of java.time.

Clone this wiki locally