⭐ New Features
- Track only qualifier annotations in
BeanOverrideHandler
#34260 - Remove
@FunctionalInterface
declaration fromBeanOverrideProcessor
#34259 - Refine default filtered headers for web data binding #34182
- Improve query params in uri KeyValue with HTTP interface client #34176
- Refine location checks for PathResource #34167
- Avoid virtual thread pinning in procedure calling #34133
- Type-level constraint violation should result in ParameterErrors #34105
- Avoid logger serialization behind shared EntityManager proxy #34084
- Improve PathMatcher to PathPatternParser migration in mvc XML configuration #34064
- Support
@MockitoBean
at the type level on test classes #33925
🐞 Bug Fixes
- HttpHeadersAssert#doesNotContainsHeaders has a typo #34263
- Deadlock with background EntityManager bootstrap due to locking in getSingletonFactoryBeanForTypeCheck #34247
- ApplicationListener no longer invoked for double generic ApplicationEvent with 6.2.1 #34234
- Nested transaction savepoints are broken in SQL Server #34233
- Error handling override in DefaultResponseErrorHandler ignored after upgrade to 6.2.0 #34231
- FileNotFoundException is thrown when using ConfigurationPropertiesScan with Spring Context 6.2.1 #34216
- BindException declared but not handled by ExceptionHandler #34214
@TestBean
factory method resolution is incorrect within class hierarchy #34204- Bean Override in superclass takes precedence over Bean Override in subclass #34194
- Ensure
AsyncListener#onError
does not return until dispatch completes #34192 - BeanNotOfRequiredTypeException during transaction qualifier resolution in 6.2.1 #34187
- BeanCurrentlyInCreationException is thrown when multiple threads simultaneously try to create bean #34186
DataBinder
throwsIndexOutOfBoundsException
when indexed parameter uses nonconsecutive indices #34145- NullPointerException is thrown if WebClient is used with Apache Httpclient and cookies are disabled #34132
- Wrong parentId tracking in FlightRecorderApplicationStartup #34128
- PathMatchingResourcePatternResolver is not able to resolve file in SpringBoot Packaged JAR #34126
- Placeholder resolution no longer considers exact match before resolving the placeholder key #34124
DataBinder
throwsStringIndexOutOfBoundsException
for indexed property without nested property path #34121- Dependency injection matches wildcards too leniently with 6.2.1 #34119
- PathMatchingResourcePatternResolver throws FileNotFoundException caused by wrong cache path #34111
- SpEL fails to invoke
MethodHandle
function reference accepting only varargs #34109 - Generic with a base type is no longer resolved to its base if the generic is unresolved #34086
DataBinder
throwsStringIndexOutOfBoundsException
for map property without nested property path #34043- Fix implicit variable resolution in JSP
EvalTag
#33945
📔 Documentation
- Fix inaccuracy in RequestHeaderArgumentResolver Javadoc #34230
- Document that http.client.requests measure the entire HTTP exchange #34201
- Misuse of em dash in "Basic Concept" section #34165
- Fix typo in link #34149
- Broken syntax in xml sample of "Reference to Other Beans" section #34148
- Fix minor typo in reference documentation for Kotlin annotations #34134
- Clarify documentation for the default uri client request observation metric #34116
- Fix broken links in the web reference documentation #34115
- Bean creation lazily ignores annotations like
@EventListener
#34057
🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Mattias-Sehlstedt, @Spanching, @brendenehlers, @izeye, @luozongle01, @micopiira, @ngocnhan-tran1996, @quaff, @rPraml, @remeio, and @scordio