⭐ New Features
- Deprecate JUnit 4 integration #47256
- Add support for SimpleTaskExecutor#cancel-remaining-tasks-on-close #47244
- Restructure foundational packages to remove dependency on 'org.springframework.boot' #47232
- Add configuration property for Tomcat's static resource cache max size #47229
- Introduce specialized interfaces in PropertiesConfigAdapter #47226
- Make ConfigDataLocation.of non-nullable #47221
- Make SanitizableData.key non-nullable #47220
- Add methods to connector and request factory builds to apply pre-packaged customizations #47205
- Finalize and document Spring Boot's HTTP Service client support #47179
- Revisit Kotlin Serialization integration #47178
- Remove explicit dependency management for Spring Authorization Server as it is now part of Spring Security #47174
- Adapt RetryTopicConfiguration now that Spring Kafka no longer relies on Spring Retry #47125
- Remove auto-configuration support for '
@HttpServiceClient
' #47123 - Adapt RabbitRetryTemplateCustomizer now that Spring AMQP no longer relies on Spring Retry #47122
- Rename spring.mongodb.uuid-representation #47052
- Remove Spring Data MongoDB dependency from MongoDB health support #47051
- Always use mongodb rather than mongo in MongoDB-related configuration properties #47050
- Remove GridFs from MongoConnectionDetails #47044
- Rename *DataProperties classes to Data*Properties #47043
- Add a configuration property for configuring Spring Data MongoDB's BigDecimal representation #47041
- Rename ConditionalOnEnabledTracing to ConditionalOnEnabledTracingExport #47029
- Update PropertyMapper to better support nullability #47024
- Drop support for Jersey, at least until it supports JAX-RS 4 (Jakarta EE 11) #47017
- Rename ScheduledTasksObservabilityAutoConfiguration to ScheduledTasksObservationAutoConfiguration #46995
- Refine JSpecify annotations #46926
- Introduce Kotlin Serialization auto-configuration #46546
- Exclude spring-boot-devtools from AOT processing in Maven #46533
- Improve Log4j Core configuration file detection for Log4j 3 #46409
- Remove dependency management for Spring Retry in favor of spring-core's new retry support #46309
- Optimize resource lookup in DevTools restart #46289
- Add support for authenticating with Elasticsearch using an API key #46167
- Remove isImmutable and getPrefix from OriginLookup #45547
- Update Jackson support to require Jackson 3 #45535
- Use a shaded version of org.json in spring-boot-configuration-metadata and spring-boot-cli #45504
- Replace
@OptionalParameter
with JSpecify's@Nullable
#45390 - Create spring-boot-persistence module to house general persistence-related code and properties #45328
- Rename spring-boot-starter-aop to spring-boot-starter-aspectj #42948
- Rename MongoDB properties that do not require Spring Data MongoDB #34954
- Enable readiness and liveness probe endpoints by default #22825
🐞 Bug Fixes
- App fails to start when trying to use Prometheus without Actuator #47175
- Quoted -D arguments break system property resolution on Linux with Spring AOT #47167
- available() does not behave correctly when reading stored entries from a NestedJarFile #47058
- spring-boot-docker-compose doesn't create service connections when image has registry host but not project #47020
- Flyway Ignore Migration Patterns setting can't be set to an empty string #47014
📔 Documentation
- Default value of server.tomcat.resource.cache-ttl is not documented #47254
- Document Java 25 support #47248
- Fix links to Flyway reference documentation #46989
- Clarify Javadoc of Customizer interfaces about overriding behavior #46943
🔨 Dependency Upgrades
- Upgrade to Couchbase Client 3.9.1 #47129
- Upgrade to Ehcache3 3.11.1 #46893
- Upgrade to Elasticsearch Client 9.1.4 #47173
- Upgrade to Flyway 11.13.1 #47261
- Upgrade to Gson 2.13.2 #47153
- Upgrade to Hibernate 7.1.1.Final #47217
- Upgrade to HikariCP 7.0.2 #47060
- Upgrade to HtmlUnit 4.16.0 #47061
- Upgrade to HttpCore5 5.3.5 #47062
- Upgrade to Infinispan 15.2.6.Final #47063
- Upgrade to Jackson Bom 3.0.0-rc9 #47130
- Upgrade to Jakarta Activation 2.1.4 #47161
- Upgrade to Jakarta Mail 2.1.4 #47064
- Upgrade to Jaybird 6.0.3 #47065
- Upgrade to Jedis 6.2.0 #47045
- Upgrade to Jetty 12.1.1 #47131
- Upgrade to jOOQ 3.19.26 #47154
- Upgrade to Kafka 4.1.0 #47066
- Upgrade to Kotlin 2.2.10 #47067
- Upgrade to Lettuce 6.8.1.RELEASE #47046
- Upgrade to Lombok 1.18.40 #47068
- Upgrade to MariaDB 3.5.6 #47168
- Upgrade to Maven Failsafe Plugin 3.5.4 #47195
- Upgrade to Maven Shade Plugin 3.6.1 #47196
- Upgrade to Maven Surefire Plugin 3.5.4 #47197
- Upgrade to Micrometer 1.16.0-M3 #46996
- Upgrade to Micrometer Tracing 1.6.0-M3 #46997
- Upgrade to MongoDB 5.6.0 #47169
- Upgrade to Netty 4.2.6.Final #47132
- Upgrade to OpenTelemetry 1.54.0 #47133
- Upgrade to Pulsar 4.1.0 #47170
- Upgrade to R2DBC MSSQL 1.0.3.RELEASE #47171
- Upgrade to Reactor Bom 2025.0.0-M7 #46998
- Upgrade to SnakeYAML 2.5 #47069
- Upgrade to Spring AMQP 4.0.0-M5 #46999
- Upgrade to Spring Batch 6.0.0-M3 #47001
- Upgrade to Spring Data Bom 2025.1.0-M6 #47002
- Upgrade to Spring Framework 7.0.0-M9 #47008
- Upgrade to Spring GraphQL 2.0.0-M3 #47009
- Upgrade to Spring HATEOAS 3.0.0-M5 #47003
- Upgrade to Spring Integration 7.0.0-M3 #47010
- Upgrade to Spring Kafka 4.0.0-M5 #47004
- Upgrade to Spring LDAP 4.0.0-M3 #47005
- Upgrade to Spring Pulsar 2.0.0-M3 #47006
- Upgrade to Spring RESTDocs 4.0.0-M3 #47007
- Upgrade to Spring Security 7.0.0-M3 #47199
- Upgrade to Tomcat 11.0.11 #47070
- Upgrade to Versions Maven Plugin 2.19.0 #47071
- Upgrade to XmlUnit2 2.10.4 #47241
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Chanwon-Seo, @HyunSangHan, @academey, @dmitrysulman, @doljae, @izeye, @jonatan-ivanov, @kzittritsch, @l-trotta, @maziyarbahramian, @move-hoon, @ppkarwasz, and @quaff