-
Notifications
You must be signed in to change notification settings - Fork 41.9k
Spring Boot 4.1.0 M1 Release Notes
Classes, methods and properties that were deprecated in Spring Boot 4.0 have been removed in this release. Please ensure that you aren’t calling deprecated methods before upgrading.
The Apache Derby project team has recently announced that the project has been retired. As a result, the integration in Spring Boot has been deprecated. If you are still using Derby, consider migrating to H2 or HSQL.
The deprecated layertools jar mode has been removed in this release.
If you were still using it, please move to tools that provides the same features (and more).
|
Tip
|
Check the configuration changelog for a complete overview of the changes in configuration. |
General reading and writing features that are common across multiple formats (CBOR, JSON, and XML) can now be auto-configured using spring.jackson.read. and spring.jackson.write. properties respectively.
Auto-configuration of an embedded LDAP server now supports SSL (LDAPS).
To enable SSL, configure an SSL bundle using the spring.ldap.embedded.ssl.bundle property.
The JMS support has been improved to provide a configurer for SimpleJmsMessageListener that is similar to the existing DefaultJmsListenerContainerFactoryConfigurer.
The simple implementation may be more suitable in certain scenarios, check the Spring Framework Reference Guide for more details.
This release reintroduces Spock support since we now have a Spock 2.4 release that support Groovy 5.
Context can be automatically propagated to methods running on a separate thread using @Async.
See the Reference Guide for more details.
A number of improvements have been made to support for observation conventions:
-
KafkaListenerObservationConventionbeans are now automatically applied to the Kafka container factory. -
KafkaTemplateObservationConventionbeans are now automatically applied to theKafkaTemplate -
RabbitListenerObservationConvention,RabbitTemplateObservationConvention,RabbitStreamListenerObservationConventionandRabbitStreamTemplateObservationConventionbeans are now automatically configured on the Spring AMQP components
Improvements to meter conventions have also been made:
-
Any
JvmMemoryMeterConventionsbean is applied to the auto-configuredJvmMemoryMetrics -
Any
JvmThreadMeterConventionsbean is applied to the auto-configuredJvmThreadMetrics -
Any
JvmClassLoadingMeterConventionsbean is applied to the auto-configuredClassLoaderMetrics -
Any
JvmCpuMeterConventionsbean is applied to the auto-configuredProcessorMetrics
The Gradle plugin’s bootBuildImage task now supports specifying environment variables on the command line using --environment.
To specify multiple environment variables, use --environment multiple times.
If an environment variable is configured both on the command line and in a build script, the value of the command line takes precedence.
Spring Boot 4.0.0-M1 moves to new versions of several Spring projects:
Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:
-
Commons Pool2 2.13.1
-
HttpClient5 5.6
-
HttpCore5 5.4
-
Oracle Database 23.26
-
Pooled JMS 3.2
Apart from the changes listed above, there have also been lots of minor tweaks and improvements including:
-
AssertJ
Assertimplementations make use of@CheckReturnValuewhen applicable. -
Add a failure analyzer that provides more details when Testcontainers cannot find a suitable Docker environment.
-
EntityManagerFactoryBuildercan now addPersistenceUnitPostProcessorinstances rather than just setting them. -
Mustache support consistently uses
Charsetinstead of theStringequivalent. -
Auto-configuration for Spring Data REST supports a new
spring.data.rest.return-body-on-deleteproperty. -
The web servers' temporary directories are now deleted when the context is closed.
-
Beans defined by
MockRestServiceServiceAutoConfigurationare now@ConditionalOnMissingBean, making them easier to replace if needed. -
A new
@AutoConfigureWebServertest annotation has been added allowing you to add the embedded web server factory bean for tests to use.