-
Notifications
You must be signed in to change notification settings - Fork 41.1k
Spring Boot 3.5.0 RC1 Release Notes
Thus far, Spring Boot auto-configures a TaskExecutor
with the taskExecutor
and applicationTaskExecutor
bean names.
As of this release, only the applicationTaskExecutor
bean name is provided.
Code that is requesting the auto-configured Executor
by name should be adapted to use applicationTaskExecutor
.
If you relied on this behaviour and cannot change it immediately, the alias can be added using a BeanFactoryPostProcessor
, as shown in the following example:
@Configuration
public class MyConfiguration {
@Bean
static BeanFactoryPostProcessor taskExecutorAliasBeanFactoryPostProcessor() {
return (beanFactory) -> beanFactory.registerAlias("applicationTaskExecutor", "taskExecutor");
}
}
Tip
|
Check the configuration changelog for a complete overview of the changes in configuration. |
If an Executor
bean is present, Spring Boot can now be configured to auto-configure an AsyncTaskExecutor
anyway.
To do so, set the spring.task.execution.mode
property to force
.
When running in this mode, it makes sure that all integrations, including regular @Async
processing uses the auto-configured executor,
unless an AsyncConfigurer
bean is defined.
As an annotation-based alternative to ServletRegistrationBean
and FilterRegistrationBean
two new annotations have been added.
@ServletRegistration
can be used to register Servlet`s, while `@FilterRegistration
can be used to register `Filter`s, as shown in this example:
@Configuration(proxyBeanMethods = false)
class MyConfiguration {
@Bean
@FilterRegistration(name = "my-filter", urlPatterns = "/test/*", order = 0)
MyFilter myFilter() {
return new MyFilter();
}
}
---
=== Dependency Upgrades
Spring Boot 3.5.0-RC1 moves to new versions of several Spring projects:
TBD
Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:
TBD
=== Miscellaneous
Apart from the changes listed above, there have also been lots of minor tweaks and improvements including:
* `MeterProvider` beans are now automatically configured on `OtlpHttpLogRecordExporter`, `OtlpHttpSpanExporter`, `OtlpGrpcLogRecordExporter` and `OtlpGrpcSpanExporter`.
* The `referral` mode for Spring LDAP can be configured with the new `spring.ldap.referral` property.
* Customizers for `OtlpHttpSpanExporterBuilder` and `OtlpGrpcSpanExporterBuilder` have been added.
* The new property `spring.kafka.consumer.max-poll-interval` can be used to configure Kafka's maximum delay between poll invocations.
== Deprecations in Spring Boot 3.5.0-RC1
* The configuration property `spring.mvc.converters.preferred-json-mapper` has been deprecated. It is replaced by `spring.http.converters.preferred-json-mapper`.
* The configuration properties `spring.codec.log-request-details` and `spring.codec.max-in-memory-size` have been deprecated. They are replaced by `spring.http.codecs.log-request-details` and `spring.http.codecs.max-in-memory-size` respectively.