⭐ New Features
- Allow additional interfaces to be defined on AssertableApplicationContext and ApplicationContextRunners #42369
- Add spring.jms.listener.max-messages-per-task property for configuring max messages per task #42341
- Support
@DependsOn
,@Description
,@Fallback
,@Lazy
,@Primary
, and@Role
on@ConfigurationProperties
beans #42289 - Add Pulsar container factory customizers #42182
- Use
@EnableConfigurationProperties
to define the MessageSourceProperties bean #42181 - Add OpenTelemetry Logging service connection support from LgtmStackContainer and Docker Compose #42174
- Add transport selection to OtlpLoggingConnectionDetails #42171
- Add Graylog Extended Log Format (GELF) for structured logging #42158
- Add consistent scope support ConfigurationProperties beans #42073
- Apply spring.pulsar.consumer.subscription.name to auto-configured Pulsar listener container #42067
- Add support for configuring Pulsar listener container concurrency #42062
- Add support for configuring Pulsar client IO and listener threads #42052
- Add support for Log4j2's MultiFormatStringBuilderFormattable in structured logging #42034
- Use early static registration of EventPublishingContextWrapper in tests #42005
- Add configuration support for ExponentialHistogram in OTLP Registry #41837
- Support testcontainers-redis #41450
- Support Otlp Tracing's GRPC port from service connections #41333
- Add service connection from Opentelemetry Collector for Logging #41324
- Add auto-configuration for OTLP gRPC format when using tracing #41213
- Add a configuration property for Spring Data Web's serialization mode #39797
- Reinstate support for auto-configuring an embedded ActiveMQ broker #38404
- Enable graceful shutdown by default #37495
- Allow the configuration of active profiles in SpringApplication.Augmented #36660
- Reduce the need for
@AutoConfigureTestDatabase
(replace=NONE) when using a test-provided database #35253 - Remove setting BP_NATIVE_IMAGE environment variable when building images #32884
- Provide support for deprecated auto-configuration classes #14860
🐞 Bug Fixes
- management.health.db.ignore-routing-datasources=true has no effect when an AbstractRoutingDataSource has been wrapped #42323
- Missing details in OAuth2ClientProperties validation error message #42280
- FileNotFoundException from unused mis-configured SSL bundles #42170
- ZipkinHttpClientSender fails with "Failed to introspect Class" when spring-web is not on the classpath #42160
@RestartScope
can cause 'Recursive update' exceptions when used with container beans #42108- JarLauncher fails to load large jar files #42080
- PropertiesMigrationListener wrongly reports property as deprecated when has group #42072
- Using an empty string MongoDB 'replica-set-name' property will result in ClusterType=REPLICA_SET #42060
- Binding spring.main.* properties doesn't work in a native image #42038
- Default Logback config uses deprecated "converterClass" attribute #42008
- Health endpoint additional paths are not available by default when Spring Security is used #40962
- Application yaml file is not processed after spring boot migration #35403
📔 Documentation
- Document that spring.jmx.enabled is not intended for third-party libraries #42286
- Update link to Log4j2 system properties #42264
- Links to GraphQL in the reference guide redirect to the root instead of specific sections #42209
- Syntax error in "Receive a message reactively section" of the reference guide #42201
- Deprecation reason for the autotime enabled, percentiles, and percentiles-historgram properties is confusing #42194
- Replace RFC 7807 by RFC 9457 in property documentation #42191
- Document that configuration property binding to a Kotlin value class with a default is not supported #42177
- Update documentation to reflect new no handler found exception behavior #42168
- Polish configuration property reference #42166
- Improve docker without buildpacks documentation #42114
- Fix StatsD link typo on Metrics documentation page #42113
- Remove link to “Converting a Spring Boot JAR Application to a WAR” as the guide is no longer available #42112
- Improve documentation in "Command-line Completion" #42104
- Kotlin code examples are missing from the Testing section #42096
- Fix incorrect command in Docker configuration for Colima #42083
- Add tip to correlation IDs documentation referencing spring.reactor.context-propagation=auto #42054
- Gradle Plugin AOT documentation has sample error #42051
- Add documentation for configuring OpenTelemetry SDK logs #41825
🔨 Dependency Upgrades
- Upgrade to Artemis 2.37.0 #42213
- Upgrade to Byte Buddy 1.15.1 #42215
- Upgrade to Commons Lang3 3.17.0 #42216
- Upgrade to Elasticsearch Client 8.15.1 #42217
- Upgrade to Flyway 10.18.0 #42295
- Upgrade to Groovy 4.0.23 #42296
- Upgrade to Hibernate 6.6.1.Final #42349
- Upgrade to HttpCore5 5.3 #42297
- Upgrade to Infinispan 15.0.8.Final #42219
- Upgrade to Jakarta Servlet JSP JSTL 3.0.2 #42220
- Upgrade to JBoss Logging 3.6.1.Final #42221
- Upgrade to Jedis 5.1.5 #42222
- Upgrade to Jetty 12.0.13 #42224
- Upgrade to Jetty Reactive HTTPClient 4.0.7 #42223
- Upgrade to Lettuce 6.4.0.RELEASE #42225
- Upgrade to Liquibase 4.29.2 #42226
- Upgrade to Log4j2 2.24.0 #42227
- Upgrade to Logback 1.5.8 #42228
- Upgrade to Maven Dependency Plugin 3.8.0 #42229
- Upgrade to Maven Failsafe Plugin 3.5.0 #42230
- Upgrade to Maven Help Plugin 3.5.0 #42231
- Upgrade to Maven Invoker Plugin 3.8.0 #42232
- Upgrade to Maven Javadoc Plugin 3.10.0 #42233
- Upgrade to Maven Surefire Plugin 3.5.0 #42234
- Upgrade to Micrometer 1.14.0-M3 #42137
- Upgrade to Micrometer Tracing 1.4.0-M3 #42138
- Upgrade to Mockito 5.13.0 #42235
- Upgrade to MongoDB 5.1.4 #42236
- Upgrade to MSSQL JDBC 12.8.1.jre11 #42237
- Upgrade to Native Build Tools Plugin 0.10.3 #42206
- Upgrade to Neo4j Java Driver 5.24.0 #42271
- Upgrade to Netty 4.1.113.Final #42238
- Upgrade to OpenTelemetry 1.42.1 #42298
- Upgrade to Postgresql 42.7.4 #42239
- Upgrade to R2DBC MariaDB 1.2.2 #42328
- Upgrade to R2DBC MySQL 1.3.0 #42240
- Upgrade to Rabbit AMQP Client 5.22.0 #42350
- Upgrade to Reactor Bom 2024.0.0-M6 #42139
- Upgrade to Selenium 4.24.0 #42241
- Upgrade to SendGrid 4.10.3 #42368
- Upgrade to SnakeYAML 2.3 #42242
- Upgrade to Spring AMQP 3.2.0-M3 #42140
- Upgrade to Spring Authorization Server 1.4.0-M2 #42141
- Upgrade to Spring Batch 5.2.0-M1 #42142
- Upgrade to Spring Data Bom 2024.1.0-M1 #42143
- Upgrade to Spring Framework 6.2.0-RC1 #42144
- Upgrade to Spring HATEOAS 2.4.0-RC1 #42283
- Upgrade to Spring Integration 6.4.0-M3 #42145
- Upgrade to Spring Kafka 3.3.0-M3 #42146
- Upgrade to Spring Pulsar 1.2.0-M2 #42147
- Upgrade to Spring Retry 2.0.9 #42329
- Upgrade to Spring Security 6.4.0-M4 #42148
- Upgrade to Tomcat 10.1.30 #42347
- Upgrade to Undertow 2.3.17.Final #42304
- Upgrade to Zipkin Reporter 3.4.2 #42367
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Alchemik, @PiyalAhmed, @abc5259, @arefbehboudi, @bazzi2548, @eddumelendez, @einarpehrson, @famaridon, @izeye, @martinfrancois, @mushroom528, @ngocnhan-tran1996, @nosan, @onobc, @quaff, @slissner, @timpeeters, and @vpavic