⭐ New Features
- Change SpringBootContextLoader.getEnvironment to return
null
by default #29405 - Allow test property sources to override command line args #29404
- Do not auto-configure a UserDetailsService when SAML 2.0 Login is being used #29263
- Provide option for disabling field introspection with GraphQL #29248
- Add Spring GraphQL support #29140
- Add vendor version to JavaInfo #29090
- Add transactionIdPrefix Property to KafkaTemplate #29089
- Include AbstractJdbcConfiguration beans in
@DataJdbcTest
#29003 - Support resolution of AuthenticatedPrincipal in RSocket handler methods #28927
- Expose Operating System information as an info contributor #28907
- Add support for configuring Netty's max-keep-alive-requests #28875
- Add option to allow Spring Batch custom isolation levels #28859
- Add support for CNB platform API 0.5 through 0.8 #28850
- Allow injection of Spring-managed beans into Hazelcast components #28801
- Change ID of DatabaseDriver.MARIADB from mysql to mariadb #28728
- Log a debug message with the reason for restarting devtools #28495
- Provide more control over WebMvcMetricsFilter's registration #28428
- Add support for IdlePartitionEventInterval #28290
- Add auto-configuration for RabbitStreamTemplate #28060
- Use the same classpath ordering for an exploded war and an archive #19875
🐞 Bug Fixes
- ResponseStatusException no longer returning response body in 2.6.2 using Spring Security when application has a custom context path #29501
- 'spring.config.import' placeholders can resolve from profile-specific documents when they should fail #29460
- Warning from AprLifecycleListener when using Tomcat Native and Tomcat 9.0.55 or later #29455
- ConfigurationPropertySources.attach will always reattach when called multiple times #29411
@SpringBootTest
does not use spring.main.web-application-type properties declared in test resource files #29375- Embedded launch script fails if jar is owned by an unknown user #29372
- Maven repackaging of a jar with a deeply nested package is prohibitively slow #29269
- Health contributor exclusion rules aren't applied to child contributors #29261
- Default value for management.info.env.enabled is outdated #29190
- WebGraphQlTester bean missing with SpringBootTest #29250
- The getter and setter that's used during configuration property binding varies when a getter or setter has been overridden to use a subclass of the property's type #29144
- Spring boot 2.6.0 Quartz mysql/mariadb tables are not created #29136
- Setting cache time-to-live for the health endpoint has no effect #29109
- ResponseStatusException no longer returning response body in 2.6.1 using spring security #29108
- DatabaseInitializationDependencyConfigurer triggers eager initialization of factory beans #29104
- Hibernate validation messages broken in spring boot 2.6.1 when setUseCodeAsDefaultMessage set to true #29088
- DataSourceScriptDatabaseInitializer may still try to access the database even though its initialization mode is never #29086
- Platform used for Quartz, Session, Integration, and Batch schema initialization cannot be configured #29016
- App fails to start when it depends on thymeleaf-extras-springsecurity5 but does not have Spring Security on the classpath #28980
- server.servlet.session.cookie.same-site isn't applied to Spring Session's SESSION cookie #28951
- AbstractMethodError in org.springframework.boot.web.servlet.filter.ErrorPageSecurityFilter when deployed to a Servlet 3.1-compatible container #28942
- Image buildpack references without tag do not default to latest version #28923
- Invalid classpath index manifest attribute in war files built with Maven #28905
📔 Documentation
- Refer to Maven Resolver rather than Aether #29481
- Clarify documentation for RestTemplate customization #29402
- Learning About Spring Boot Features has "logging" link twice #29381
- 2.5.x snapshot documentation links to source code on the main branch #29142
- Document that using DevTools with a remote application is not supported with WebFlux #29139
- Polish Creating Your Own Auto-configuration section in Core Features reference doc #29134
- Polish CacheManager customization section in reference doc #29099
- Polish README.adoc #28949
- Add consistent quotes in YAML samples of reference doc #28945
- Fix documented default value for property
spring.mvc.pathmatch.matching-strategy
#28937
🔨 Dependency Upgrades
- Upgrade to AppEngine SDK 1.9.93 #29202
- Upgrade to AssertJ 3.22.0 #29204
- Upgrade to Build Helper Maven Plugin 3.3.0 #29413
- Upgrade to Byte Buddy 1.12.7 #29414
- Upgrade to Caffeine 2.9.3 #29206
- Upgrade to Couchbase Client 3.2.4 #29207
- Upgrade to DB2 JDBC 11.5.7.0 #29208
- Upgrade to Dropwizard Metrics 4.2.7 #29209
- Upgrade to Ehcache3 3.9.9 #29210
- Upgrade to Elasticsearch 7.16.2 #29292
- Upgrade to Embedded Mongo 3.2.8 #29469
- Upgrade to Flyway 8.4.2 #29504
- Upgrade to Hazelcast 5.0.2 #29265
- Upgrade to Hibernate 5.6.4.Final #29505
- Upgrade to HtmlUnit 2.56.0 #29215
- Upgrade to HttpAsyncClient 4.1.5 #29216
- Upgrade to HttpCore 4.4.15 #29217
- Upgrade to HttpCore5 5.1.3 #29218
- Upgrade to Infinispan 13.0.5.Final #29256
- Upgrade to Jackson Bom 2.13.1 #29219
- Upgrade to Jaybird 4.0.5.java8 #29220
- Upgrade to JBoss Logging 3.4.3.Final #29415
- Upgrade to JDOM2 2.0.6.1 #29221
- Upgrade to Jedis 3.8.0 #29416
- Upgrade to JUnit Jupiter 5.8.2 #29227
- Upgrade to Kotlin 1.6.10 #29228
- Upgrade to Kotlin Coroutines 1.6.0 #29264
- Upgrade to Lettuce 6.1.6.RELEASE #29417
- Upgrade to Liquibase 4.7.0 #29471
- Upgrade to Log4j2 2.17.1 #29185
- Upgrade to Logback 1.2.10 #29229
- Upgrade to MariaDB 2.7.5 #29506
- Upgrade to Maven Compiler Plugin 3.9.0 #29418
- Upgrade to Maven Jar Plugin 3.2.2 #29419
- Upgrade to Micrometer 1.9.0-M2 #29282
- Upgrade to Mockito 4.2.0 #29230
- Upgrade to MongoDB 4.4.1 #29420
- Upgrade to MSSQL JDBC 9.4.1.jre8 #29231
- Upgrade to MySQL 8.0.28 #29472
- Upgrade to Neo4j Java Driver 4.4.2 #29421
- Upgrade to Netty 4.1.73.Final #29422
- Upgrade to Netty tcNative 2.0.47.Final #29423
- Upgrade to Oracle Database 21.4.0.0.1 #29233
- Upgrade to Pooled JMS 1.2.3 #29473
- Upgrade to Prometheus Client 0.14.1 #29234
- Upgrade to R2DBC Bom Arabba-SR12 #29424
- Upgrade to Rabbit AMQP Client 5.14.1 #29425
- Upgrade to Reactor 2020.0.15 #29280
- Upgrade to Reactor Bom 2020.0.14 #29236
- Upgrade to Selenium 4.1.1 #29237
- Upgrade to Selenium HtmlUnit 3.56.0 #29238
- Upgrade to SendGrid 4.8.2 #29426
- Upgrade to SLF4J 1.7.33 #29427
- Upgrade to SnakeYAML 1.30 #29240
- Upgrade to Spring AMQP 2.4.2 #29284
- Upgrade to Spring Data 2021.2.0-M2 #29223
- Upgrade to Spring Framework 5.3.15 #29328
- Upgrade to Spring GraphQL 1.0.0-M5 #29285
- Upgrade to Spring HATEOAS 1.5.0-M1 #29353
- Upgrade to Spring Integration 5.5.8 #29286
- Upgrade to Spring Kafka 2.8.2 #29224
- Upgrade to Spring LDAP 2.4.0-M1 #29222
- Upgrade to Spring REST Docs 2.0.6.RELEASE #29323
- Upgrade to Spring Security 5.7.0-M1 #29225
- Upgrade to Spring Session 2021.2.0-M1 #29226
- Upgrade to Spring WS 3.1.2 #29243
- Upgrade to Thymeleaf 3.0.14.RELEASE #29244
- Upgrade to Tomcat 9.0.58 #29507
- Upgrade to Undertow 2.2.14.Final #29246
- Upgrade to XmlUnit2 2.8.4 #29247
❤️ Contributors
We'd like to thank all the contributors who worked on this release!