-
Notifications
You must be signed in to change notification settings - Fork 40.7k
Spring Boot 3.2.0 M3 Release Notes
For changes in earlier milestones, please refer to:
Spring Boot now supports Jetty 12. Jetty 12 supports the Servlet 6.0 API, aligning it with both Tomcat and Undertow. Previously, if you were using Jetty with Spring Boot 3.x, the Servlet API had to be downgraded to 5.0. This is no longer necessary. Remove any override of the Servlet API version when upgrading.
Spring Boot now uses H2 2.2 by default.
To continue using a database from earlier version of H2 it may be necessary to perform a data migration.
Before upgrading, export the database using the SCRIPT
command.
Create an empty database with the new version of H2 and then import the data using the RUNSCRIPT
command.
Tip
|
Check the configuration changelog for a complete overview of the changes in configuration. |
Spring Boot now includes auto-configuration support and starter POMs for the Spring for Apache Pulsar project. See the updated reference documentation for full details.
Micrometer 1.12 includes a feature to broaden the exemplar support that requires Prometheus 2.43 or later. If you’re using a Prometheus version older than 2.43.0 and you’re using Micrometer Tracing, please upgrade to Prometheus >= 2.43.0, otherwise metrics won’t show up anymore.
Virtual host support for RabbitMQ Stream has been added. The virtual host for RabbitMQ Stream automatically uses the configured virtual host for RabbitMQ if not set explicitly. To use a specific virtual host for RabbitMQ Stream, set spring.rabbitmq.stream.virtual-host
.
Spring Boot’s Docker Compose integration now supports Neo4j.
You must configure the NEO4J_AUTH
environment variable in your compose YAML to disable authentication (a value of none
) or to set a password for the neo4j
user (a value of neo4j/your-password
).
Spring Boot 3.2.0-M3 moves to new versions of several Spring projects:
-
Spring AMQP 3.1.0
-
Spring Authorization Server 1.2.0-M1
-
Spring Batch 5.1.0-M3
-
Spring Data Bom 2023.1.0-M3
-
Spring Framework 6.1.0-RC1
-
Spring GraphQL 1.2.3
-
Spring Integration 6.2.0-M3
-
Spring Kafka 3.1.0-M1
-
Spring LDAP 3.2.0
-
Spring Pulsar 1.0.0-M2
-
Spring Retry 2.0.3
-
Spring Security 6.2.0
-
Spring WS 4.0.6
Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:
-
Elasticsearch Client 8.10.1
-
Flyway 9.22.1
-
GraphQL Java 21.1
-
Hibernate 6.3.1.Final
-
MariaDB 3.2.0
-
Micrometer 1.12.0-M3
-
Micrometer Tracing 1.2.0-M3
-
SnakeYAML 2.2
Apart from the changes listed above, there have also been lots of minor tweaks and improvements including:
-
Logging has been reduced when the handler for the welcome page receives an invalid
Accept
header, falling back to accepting all MIME types. -
Dependency management for Kotlin Serialization is now provided.
-
The auto-configured
JdbcClient
bean is now available in tests using@JdbcTest
and@DataJpaTest
. -
RestClientBuilderConfigurer
, that can be used to apply Spring Boot’s defaults to aRestClient.Builder
, has been added. -
spring.application.name
is now used for OpenTelemetry’sservice.name
if noservice.name
has been set explicitly. -
The new property
spring.servlet.multipart.strict-servlet-compliance
sets whether multipart handling is only used formultipart/form-data
requests. -
There’s now connection details support for OTLP metrics and traces. A connection details bean is automatically created if using Testcontainers or Docker Compose with the
otel/opentelemetry-collector-contrib
image.