tag:github.com,2008:https://github.com/spring-projects/spring-framework/releases Release notes from spring-framework 2026-03-13T07:56:05Z tag:github.com,2008:Repository/1148753/v7.0.6 2026-03-13T08:27:38Z v7.0.6 <h2><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> Attention Required</h2> <ul> <li>Log warning when default context configuration is ignored within test class hierarchies <a href="https://github.com/spring-projects/spring-framework/issues/36390" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36390/hovercard">#36390</a></li> <li>Ignore flush calls on ServletServerHttpResponse body outputstream <a href="https://github.com/spring-projects/spring-framework/issues/36385" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36385/hovercard">#36385</a></li> </ul> <h2>⭐ New Features</h2> <ul> <li>Leverage <code>ResourceHandlerUtils</code> in <code>ScriptTemplateView</code> <a href="https://github.com/spring-projects/spring-framework/issues/36458" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36458/hovercard">#36458</a></li> <li>Restore <code>ScriptTemplateViewTests</code> <a href="https://github.com/spring-projects/spring-framework/issues/36456" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36456/hovercard">#36456</a></li> <li>Fix log message in <code>ConfigurationClassBeanDefinitionReader</code> <a href="https://github.com/spring-projects/spring-framework/issues/36453" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36453/hovercard">#36453</a></li> <li>DefaultResponseErrorHandler - setMessageConverters() not called via RestClient <a href="https://github.com/spring-projects/spring-framework/issues/36434" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36434/hovercard">#36434</a></li> <li>Resolve context initializers only once in <code>AbstractTestContextBootstrapper</code> <a href="https://github.com/spring-projects/spring-framework/issues/36430" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36430/hovercard">#36430</a></li> <li>Invoke <code>resolveContextLoader()</code> only once in <code>AbstractTestContextBootstrapper</code> <a href="https://github.com/spring-projects/spring-framework/issues/36425" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36425/hovercard">#36425</a></li> <li>Further align synthesized annotation <code>toString()</code> with modern JDKs <a href="https://github.com/spring-projects/spring-framework/issues/36417" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36417/hovercard">#36417</a></li> <li>Introduce <code>setDefaultCharset()</code> in <code>AbstractResourceBasedMessageSource</code> <a href="https://github.com/spring-projects/spring-framework/issues/36413" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36413/hovercard">#36413</a></li> <li>Support for JPA 4.0 flush mode "explicit" <a href="https://github.com/spring-projects/spring-framework/issues/36401" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36401/hovercard">#36401</a></li> <li>Support application-wide defaultHtmlEscape setting in WebFlux RequestContext <a href="https://github.com/spring-projects/spring-framework/pull/36400" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36400/hovercard">#36400</a></li> <li>Support <code>Predicate&lt;RequestPath&gt;&gt;</code> in path API version resolver <a href="https://github.com/spring-projects/spring-framework/pull/36398" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36398/hovercard">#36398</a></li> <li>Avoid duplicate flushes in HttpMessageConverter implementations <a href="https://github.com/spring-projects/spring-framework/issues/36383" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36383/hovercard">#36383</a></li> <li>Add support for non-flushing OutputStream to StreamUtils <a href="https://github.com/spring-projects/spring-framework/issues/36382" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36382/hovercard">#36382</a></li> <li>Make it easier to get InputStream from RestClient <a href="https://github.com/spring-projects/spring-framework/issues/36380" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36380/hovercard">#36380</a></li> <li>RuntimeHintsWriter should comply with reachability-metadata-schema-v1.2.0.json <a href="https://github.com/spring-projects/spring-framework/issues/36379" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36379/hovercard">#36379</a></li> <li>Make it easier to create custom HttpExchangeAdapter <a href="https://github.com/spring-projects/spring-framework/issues/36374" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36374/hovercard">#36374</a></li> <li>Improve ResourceHttpMessageConverter target type support <a href="https://github.com/spring-projects/spring-framework/issues/36368" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36368/hovercard">#36368</a></li> <li>org.springframework.test.web.servlet.assertj.AbstractHttpServletResponseAssert#headers case sensitivity <a href="https://github.com/spring-projects/spring-framework/issues/36349" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36349/hovercard">#36349</a></li> <li>Allow registering serialized lambda metadata through RuntimeHints <a href="https://github.com/spring-projects/spring-framework/issues/36339" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36339/hovercard">#36339</a></li> <li>Refactor calculateHashCode in RequestMappingInfo <a href="https://github.com/spring-projects/spring-framework/pull/36325" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36325/hovercard">#36325</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>MetadataReader misses enclosing class name for Kotlin nested classes with Java 24+ <a href="https://github.com/spring-projects/spring-framework/issues/36451" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36451/hovercard">#36451</a></li> <li>Guard against invalid id/event values in Server Sent Events <a href="https://github.com/spring-projects/spring-framework/issues/36440" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36440/hovercard">#36440</a></li> <li>Component scanning fails against non-loadable annotation type with enum array on Java 25 <a href="https://github.com/spring-projects/spring-framework/issues/36432" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36432/hovercard">#36432</a></li> <li>Duplicate ServletServerHttpRequest headers <a href="https://github.com/spring-projects/spring-framework/issues/36418" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36418/hovercard">#36418</a></li> <li>Incomplete debug message in ConfigurationClassBeanDefinitionReader <a href="https://github.com/spring-projects/spring-framework/pull/36410" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36410/hovercard">#36410</a></li> <li>Inconsistent ApplicationEventMulticaster state after removing ApplicationListener implemented by FactoryBean <a href="https://github.com/spring-projects/spring-framework/issues/36404" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36404/hovercard">#36404</a></li> <li>Propagate max frame length to WebSocket session <a href="https://github.com/spring-projects/spring-framework/pull/36370" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36370/hovercard">#36370</a></li> <li>Graceful shutdown of SimpleAsyncTaskExecutor <a href="https://github.com/spring-projects/spring-framework/issues/36362" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36362/hovercard">#36362</a></li> <li>Duplicate response headers with <code>ResponseEntity&lt;Mono&lt;T&gt;&gt;</code> (or Kotlin suspend function) controller method <a href="https://github.com/spring-projects/spring-framework/issues/36357" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36357/hovercard">#36357</a></li> <li>HttpServiceProxyFactory returns LinkedHashMap instead of target type for method with generic return type <a href="https://github.com/spring-projects/spring-framework/issues/36326" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36326/hovercard">#36326</a></li> <li>HttpMediaTypeException thrown when calculating compatible media types <a href="https://github.com/spring-projects/spring-framework/issues/36300" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36300/hovercard">#36300</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Document <code>FullyQualifiedConfigurationBeanNameGenerator</code> in Javadoc and reference docs <a href="https://github.com/spring-projects/spring-framework/issues/36455" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36455/hovercard">#36455</a></li> <li>Document <code>@Fallback</code> alongside <code>Primary</code> in the reference manual and <code>@Bean</code> Javadoc <a href="https://github.com/spring-projects/spring-framework/issues/36439" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36439/hovercard">#36439</a></li> <li>Fix links to <code>UriComponentsBuilder</code> and polish examples <a href="https://github.com/spring-projects/spring-framework/pull/36403" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36403/hovercard">#36403</a></li> <li>Emphasize <code>@Configuration</code> classes over XML and Groovy in testing chapter <a href="https://github.com/spring-projects/spring-framework/issues/36393" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36393/hovercard">#36393</a></li> <li>Document tips to avoid issues with ignored default context configuration in tests <a href="https://github.com/spring-projects/spring-framework/issues/36392" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36392/hovercard">#36392</a></li> <li>Polish SpEL operator examples in reference docs <a href="https://github.com/spring-projects/spring-framework/pull/36367" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36367/hovercard">#36367</a></li> <li>Add programmatic configuration tabs in the transactional refdoc <a href="https://github.com/spring-projects/spring-framework/pull/36323" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36323/hovercard">#36323</a></li> <li>Document registration recommendations for <code>BeanPostProcessor</code> and <code>BeanFactoryPostProcessor</code> <a href="https://github.com/spring-projects/spring-framework/issues/34964" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/34964/hovercard">#34964</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to JUnit 6.0.3 <a href="https://github.com/spring-projects/spring-framework/issues/36389" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36389/hovercard">#36389</a></li> <li>Upgrade to Micrometer 1.16.4 <a href="https://github.com/spring-projects/spring-framework/issues/36444" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36444/hovercard">#36444</a></li> <li>Upgrade to Reactor 2025.0.4 <a href="https://github.com/spring-projects/spring-framework/issues/36443" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36443/hovercard">#36443</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AgilAghamirzayev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AgilAghamirzayev">@AgilAghamirzayev</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aavoronin93/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aavoronin93">@aavoronin93</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cetf9h/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cetf9h">@cetf9h</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/froggy0m0/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/froggy0m0">@froggy0m0</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gbouwen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gbouwen">@gbouwen</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/husseinvr97/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/husseinvr97">@husseinvr97</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jisub-dev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jisub-dev">@jisub-dev</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ngocnhan-tran1996/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ngocnhan-tran1996">@ngocnhan-tran1996</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/siom79/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/siom79">@siom79</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xxxxxxjun/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xxxxxxjun">@xxxxxxjun</a></p> spring-builds tag:github.com,2008:Repository/1148753/v6.2.17 2026-03-13T08:15:26Z v6.2.17 <h2>⭐ New Features</h2> <ul> <li>Leverage <code>ResourceHandlerUtils</code> in <code>ScriptTemplateView</code> <a href="https://github.com/spring-projects/spring-framework/issues/36459" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36459/hovercard">#36459</a></li> <li>Restore <code>ScriptTemplateViewTests</code> <a href="https://github.com/spring-projects/spring-framework/issues/36457" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36457/hovercard">#36457</a></li> <li>Fix log message in <code>ConfigurationClassBeanDefinitionReader</code> <a href="https://github.com/spring-projects/spring-framework/issues/36454" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36454/hovercard">#36454</a></li> <li>Resolve context initializers only once in <code>AbstractTestContextBootstrapper</code> <a href="https://github.com/spring-projects/spring-framework/issues/36431" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36431/hovercard">#36431</a></li> <li>Exclude legacy <code>@javax.validation.Constraint</code> from convention-based annotation attribute override check <a href="https://github.com/spring-projects/spring-framework/issues/36412" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36412/hovercard">#36412</a></li> <li>Optimize <code>MediaType(MediaType, Charset)</code> constructor <a href="https://github.com/spring-projects/spring-framework/issues/36351" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36351/hovercard">#36351</a></li> <li>Optimize the addition of a charset to the MediaType in AbstractHttpMessageConverter <a href="https://github.com/spring-projects/spring-framework/issues/36350" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36350/hovercard">#36350</a></li> <li>Consistent adaptation of HTTP headers on Servlet responses <a href="https://github.com/spring-projects/spring-framework/issues/36345" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36345/hovercard">#36345</a></li> <li>Improve performance of validation groups determination in WebFlux <a href="https://github.com/spring-projects/spring-framework/issues/36337" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36337/hovercard">#36337</a></li> <li>Detect all common size exceptions from Tomcat and Commons FileUpload 2.x <a href="https://github.com/spring-projects/spring-framework/issues/36324" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36324/hovercard">#36324</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>Guard against invalid id/event values in Server Sent Events <a href="https://github.com/spring-projects/spring-framework/issues/36442" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36442/hovercard">#36442</a></li> <li>Incomplete debug message in ConfigurationClassBeanDefinitionReader <a href="https://github.com/spring-projects/spring-framework/issues/36411" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36411/hovercard">#36411</a></li> <li>Inconsistent ApplicationEventMulticaster state after removing ApplicationListener implemented by FactoryBean <a href="https://github.com/spring-projects/spring-framework/issues/36405" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36405/hovercard">#36405</a></li> <li>Graceful shutdown of SimpleAsyncTaskExecutor <a href="https://github.com/spring-projects/spring-framework/issues/36384" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36384/hovercard">#36384</a></li> <li>HttpMediaTypeException thrown when calculating compatible media types <a href="https://github.com/spring-projects/spring-framework/issues/36363" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36363/hovercard">#36363</a></li> <li>ResolvableType#getGenerics() breaks serialization <a href="https://github.com/spring-projects/spring-framework/issues/36347" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36347/hovercard">#36347</a></li> <li>Multipart upload leak on client abort (ByteBuf.release() not called) <a href="https://github.com/spring-projects/spring-framework/issues/36327" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36327/hovercard">#36327</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Document <code>@Fallback</code> alongside <code>Primary</code> in the reference manual and <code>@Bean</code> Javadoc <a href="https://github.com/spring-projects/spring-framework/issues/36441" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36441/hovercard">#36441</a></li> <li>Document registration recommendations for <code>BeanPostProcessor</code> and <code>BeanFactoryPostProcessor</code> <a href="https://github.com/spring-projects/spring-framework/issues/36436" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36436/hovercard">#36436</a></li> <li>Fix links to <code>UriComponentsBuilder</code> and polish examples <a href="https://github.com/spring-projects/spring-framework/issues/36406" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36406/hovercard">#36406</a></li> <li>Emphasize <code>@Configuration</code> classes over XML and Groovy in testing chapter <a href="https://github.com/spring-projects/spring-framework/issues/36394" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36394/hovercard">#36394</a></li> <li>Polish SpEL operator examples in reference docs <a href="https://github.com/spring-projects/spring-framework/issues/36375" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36375/hovercard">#36375</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to JUnit 5.14.3 <a href="https://github.com/spring-projects/spring-framework/issues/36388" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36388/hovercard">#36388</a></li> <li>Upgrade to Micrometer 1.15.10 <a href="https://github.com/spring-projects/spring-framework/issues/36446" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36446/hovercard">#36446</a></li> <li>Upgrade to Reactor 2024.0.16 <a href="https://github.com/spring-projects/spring-framework/issues/36445" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36445/hovercard">#36445</a></li> </ul> spring-builds tag:github.com,2008:Repository/1148753/v7.0.5 2026-02-18T13:03:16Z v7.0.5 <h2><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> Attention Required</h2> <ul> <li>Optimize request and response header handling in Spring MVC <a href="https://github.com/spring-projects/spring-framework/issues/36334" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36334/hovercard">#36334</a></li> </ul> <h2>⭐ New Features</h2> <ul> <li>Consistent adaptation of HTTP headers on Servlet responses <a href="https://github.com/spring-projects/spring-framework/issues/36343" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36343/hovercard">#36343</a></li> <li>Copy methodAnnotations in MethodParameter copy constructor <a href="https://github.com/spring-projects/spring-framework/pull/36342" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36342/hovercard">#36342</a></li> <li>Improve performance of validation groups determination in WebFlux <a href="https://github.com/spring-projects/spring-framework/issues/36336" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36336/hovercard">#36336</a></li> <li>Reuse <code>AnnotatedMethod</code> annotation cache in derived instances <a href="https://github.com/spring-projects/spring-framework/issues/36322" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36322/hovercard">#36322</a></li> <li>Optimize the addition of a charset to the MediaType in AbstractHttpMessageConverter <a href="https://github.com/spring-projects/spring-framework/issues/36320" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36320/hovercard">#36320</a></li> <li>Optimize <code>MediaType(MediaType, Charset)</code> constructor <a href="https://github.com/spring-projects/spring-framework/issues/36318" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36318/hovercard">#36318</a></li> <li>Detect all common size exceptions from Tomcat and Commons FileUpload 2.x <a href="https://github.com/spring-projects/spring-framework/issues/36317" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36317/hovercard">#36317</a></li> <li>Consistently support <code>@Autowired</code> as a meta-annotation <a href="https://github.com/spring-projects/spring-framework/issues/36315" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36315/hovercard">#36315</a></li> <li>Avoid duplicate <code>required</code> attribute lookup for <code>@Autowired</code> annotations <a href="https://github.com/spring-projects/spring-framework/issues/36314" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36314/hovercard">#36314</a></li> <li>Cache <code>@ResponseBody</code> presence per controller class in <code>RequestResponseBodyMethodProcessor</code> <a href="https://github.com/spring-projects/spring-framework/issues/36311" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36311/hovercard">#36311</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>ResolvableType#getGenerics() breaks serialization <a href="https://github.com/spring-projects/spring-framework/issues/36346" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36346/hovercard">#36346</a></li> <li>DefaultHttpMessageConverters not adding provided configurer <a href="https://github.com/spring-projects/spring-framework/issues/36332" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36332/hovercard">#36332</a></li> <li>Restore early MessageConsumer creation for temporary queue <a href="https://github.com/spring-projects/spring-framework/issues/36321" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36321/hovercard">#36321</a></li> <li>Multipart upload leak on client abort (ByteBuf.release() not called) <a href="https://github.com/spring-projects/spring-framework/issues/36262" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36262/hovercard">#36262</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Document that SpEL expressions using <code>Optional</code> with null-safe and Elvis operators are not compilable <a href="https://github.com/spring-projects/spring-framework/issues/36331" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36331/hovercard">#36331</a></li> <li>Improve documentation of baseline API version to emphasize version must be supported <a href="https://github.com/spring-projects/spring-framework/issues/36316" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36316/hovercard">#36316</a></li> <li>Stop referring to obsolete <code>ListenableFuture</code> in documentation <a href="https://github.com/spring-projects/spring-framework/issues/36313" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36313/hovercard">#36313</a></li> <li>Stop referring to standard Java features as "Java 8" features in documentation <a href="https://github.com/spring-projects/spring-framework/issues/36310" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36310/hovercard">#36310</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Niravil/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Niravil">@Niravil</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TAKETODAY/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TAKETODAY">@TAKETODAY</a></p> spring-builds tag:github.com,2008:Repository/1148753/v7.0.4 2026-02-12T09:33:45Z v7.0.4 <h2>⭐ New Features</h2> <ul> <li>Cache method annotations in <code>MethodParameter</code> and <code>AnnotatedMethod</code> <a href="https://github.com/spring-projects/spring-framework/issues/36307" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36307/hovercard">#36307</a></li> <li>Consistently support <code>@Lazy</code> as a meta-annotation at arbitrary depths <a href="https://github.com/spring-projects/spring-framework/issues/36306" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36306/hovercard">#36306</a></li> <li>Consistently support <code>@Validated</code> as a meta-annotation at arbitrary depths <a href="https://github.com/spring-projects/spring-framework/issues/36305" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36305/hovercard">#36305</a></li> <li>Let developers disable default registrations in HttpMessageConverters <a href="https://github.com/spring-projects/spring-framework/issues/36303" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36303/hovercard">#36303</a></li> <li>Log which HandlerInterceptor threw the exception <a href="https://github.com/spring-projects/spring-framework/pull/36281" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36281/hovercard">#36281</a></li> <li>Improve performance of hashcode calculations for request mappings <a href="https://github.com/spring-projects/spring-framework/issues/36279" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36279/hovercard">#36279</a></li> <li>Improve performance of HandlerMethod bean lookup <a href="https://github.com/spring-projects/spring-framework/issues/36278" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36278/hovercard">#36278</a></li> <li>Improve performance of version mapping <a href="https://github.com/spring-projects/spring-framework/issues/36276" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36276/hovercard">#36276</a></li> <li>Improve performance of single pattern request mappings <a href="https://github.com/spring-projects/spring-framework/issues/36275" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36275/hovercard">#36275</a></li> <li>Improve performance of validation groups determination <a href="https://github.com/spring-projects/spring-framework/issues/36274" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36274/hovercard">#36274</a></li> <li>Add <code>setPackagesToScan</code> configuration method to <code>LocalEntityManagerFactoryBean</code> <a href="https://github.com/spring-projects/spring-framework/issues/36270" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36270/hovercard">#36270</a></li> <li>Remove outdated GraalVM substitution <a href="https://github.com/spring-projects/spring-framework/issues/36257" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36257/hovercard">#36257</a></li> <li>Introduce <code>beforeRetry</code> callback with <code>RetryState</code> argument <a href="https://github.com/spring-projects/spring-framework/issues/36245" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36245/hovercard">#36245</a></li> <li>Optimize NamedParameterUtils#buildValueArray by lazily fetching SqlParameter <a href="https://github.com/spring-projects/spring-framework/pull/36230" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36230/hovercard">#36230</a></li> <li>Allow customization of the <code>ProxyFactory</code> in <code>HttpServiceProxyFactory</code> used to create HTTP service proxies <a href="https://github.com/spring-projects/spring-framework/pull/36225" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36225/hovercard">#36225</a></li> <li>Consistently close streams through try-with-resources in FileCopyUtils <a href="https://github.com/spring-projects/spring-framework/issues/36223" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36223/hovercard">#36223</a></li> <li>Use Java Files utilities in FileCopyUtils <a href="https://github.com/spring-projects/spring-framework/pull/36221" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36221/hovercard">#36221</a></li> <li>SqlBinaryValue and SqlCharacterValue should support InputStream content with undetermined length <a href="https://github.com/spring-projects/spring-framework/issues/36219" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36219/hovercard">#36219</a></li> <li>Support JtaTransactionManager and SpringBeanContainer configuration on HibernateJpaVendorAdapter <a href="https://github.com/spring-projects/spring-framework/issues/36216" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36216/hovercard">#36216</a></li> <li>Add TaskCallback/Callable/Runnable wrapper for retryable tasks <a href="https://github.com/spring-projects/spring-framework/issues/36208" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36208/hovercard">#36208</a></li> <li>Refine YamlProcessor to allow different empty values <a href="https://github.com/spring-projects/spring-framework/pull/36207" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36207/hovercard">#36207</a></li> <li>Anticipate fixing Kotlin 2.3 compilation warning <a href="https://github.com/spring-projects/spring-framework/issues/36203" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36203/hovercard">#36203</a></li> <li>Allow YAML processors to create a flattened map with nulls included <a href="https://github.com/spring-projects/spring-framework/pull/36197" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36197/hovercard">#36197</a></li> <li>Use Reader.transferTo in FileCopyUtils <a href="https://github.com/spring-projects/spring-framework/pull/36196" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36196/hovercard">#36196</a></li> <li><code>DataBufferUtils.write()</code> with NettyDataBuffer on JDK 25 hangs indefinitely <a href="https://github.com/spring-projects/spring-framework/issues/36184" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36184/hovercard">#36184</a></li> <li>Make SendToMethodReturnValueHandler and SubscriptionMethodReturnValueHandler customizable, to allow for pass-through of message headers <a href="https://github.com/spring-projects/spring-framework/pull/36179" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36179/hovercard">#36179</a></li> <li>Introduce <code>RestClient.ResponseSpec#requiredBody</code> <a href="https://github.com/spring-projects/spring-framework/issues/36173" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36173/hovercard">#36173</a></li> <li>Make scope fully configurable in BeanRegistry/BeanRegistrar <a href="https://github.com/spring-projects/spring-framework/issues/36171" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36171/hovercard">#36171</a></li> <li>ConcurrencyThrottleSupport and thread interruption <a href="https://github.com/spring-projects/spring-framework/issues/36167" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36167/hovercard">#36167</a></li> <li>Add overloaded sendAndReceive methods to JmsTemplate to use explicit response queue <a href="https://github.com/spring-projects/spring-framework/pull/36162" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36162/hovercard">#36162</a></li> <li>WebClient (Reactor) attributes on Netty channel do not clear after connection release <a href="https://github.com/spring-projects/spring-framework/issues/36158" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36158/hovercard">#36158</a></li> <li>Support HttpEntity on ContentRequestMatchers.multipartData <a href="https://github.com/spring-projects/spring-framework/issues/36154" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36154/hovercard">#36154</a></li> <li>Reintroduce WebLogicJtaTransactionManager in Spring Framework 6.2.x <a href="https://github.com/spring-projects/spring-framework/issues/36151" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36151/hovercard">#36151</a></li> <li>Back-off for <code>DefaultMessageListenerContainer</code> is not applied consistently in case of listener setup failure <a href="https://github.com/spring-projects/spring-framework/issues/36143" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36143/hovercard">#36143</a></li> <li>Early support for JPA 4.0 EntityAgent (autowiring a shared proxy) <a href="https://github.com/spring-projects/spring-framework/issues/36025" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36025/hovercard">#36025</a></li> <li>Early compatibility with JPA 4.0 and Hibernate ORM 8.0 <a href="https://github.com/spring-projects/spring-framework/issues/35705" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35705/hovercard">#35705</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>Resolved HttpEntity Controller argument does not reflect mutated HTTP headers <a href="https://github.com/spring-projects/spring-framework/issues/36298" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36298/hovercard">#36298</a></li> <li>Avoid lock congestion in ConcurrentReferenceHashMap <a href="https://github.com/spring-projects/spring-framework/pull/36293" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36293/hovercard">#36293</a></li> <li>AbstractMessageConverter does not support wildcards in supported MIME types <a href="https://github.com/spring-projects/spring-framework/issues/36285" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36285/hovercard">#36285</a></li> <li>Make <code>LocalEntityManagerFactoryBean#setDataSource</code> work on Hibernate as well as EclipseLink <a href="https://github.com/spring-projects/spring-framework/issues/36271" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36271/hovercard">#36271</a></li> <li><code>StompBrokerRelayMessageHandler</code> fails to restart due to test context pausing <a href="https://github.com/spring-projects/spring-framework/issues/36266" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36266/hovercard">#36266</a></li> <li>Deadlock might occur when calling <code>System.exit</code> on startup (against multiple shutdown hooks) <a href="https://github.com/spring-projects/spring-framework/issues/36260" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36260/hovercard">#36260</a></li> <li>Missing resource hint for <code>BeanRegistrar</code> implementing <code>ImportAware</code> <a href="https://github.com/spring-projects/spring-framework/issues/36242" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36242/hovercard">#36242</a></li> <li>Inconsistent behavior with <code>@Retryable</code> on annotated interfaces <a href="https://github.com/spring-projects/spring-framework/issues/36233" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36233/hovercard">#36233</a></li> <li><code>Netty4HeadersAdapter.remove</code> returns empty list instead of <code>null</code> for non-existing key <a href="https://github.com/spring-projects/spring-framework/issues/36226" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36226/hovercard">#36226</a></li> <li>Generic type in AsyncTaskExecutor.submit(Callable) should be <code>@Nullable</code> <a href="https://github.com/spring-projects/spring-framework/issues/36191" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36191/hovercard">#36191</a></li> <li><code>EclipseLinkConnectionHandle</code> can fail against transaction isolation race condition <a href="https://github.com/spring-projects/spring-framework/issues/36165" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36165/hovercard">#36165</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Remove obsolete code in <code>Redirecting to a resource</code> section <a href="https://github.com/spring-projects/spring-framework/pull/36284" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36284/hovercard">#36284</a></li> <li>Fix formatting in Web MVC HTTP Message Conversion documentation <a href="https://github.com/spring-projects/spring-framework/pull/36250" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36250/hovercard">#36250</a></li> <li>Remove obsolete doc for spring.context.annotated-bean-reader.create <a href="https://github.com/spring-projects/spring-framework/pull/36241" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36241/hovercard">#36241</a></li> <li>Document <code>@SpringExtensionConfig</code> in the reference manual <a href="https://github.com/spring-projects/spring-framework/issues/36240" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36240/hovercard">#36240</a></li> <li>Fix JSON syntax in STOMP overview documentation <a href="https://github.com/spring-projects/spring-framework/pull/36229" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36229/hovercard">#36229</a></li> <li>Revise documentation on JSR-330 support in the reference manual <a href="https://github.com/spring-projects/spring-framework/issues/36222" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36222/hovercard">#36222</a></li> <li>Fix links to JUnit User Guide <a href="https://github.com/spring-projects/spring-framework/issues/36217" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36217/hovercard">#36217</a></li> <li>Corrected the definition of coroutines <a href="https://github.com/spring-projects/spring-framework/pull/36209" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36209/hovercard">#36209</a></li> <li>Fix <code>LocalContainerEntityManagerFactoryBean#setPersistenceUnitName</code> javadoc <a href="https://github.com/spring-projects/spring-framework/issues/36205" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36205/hovercard">#36205</a></li> <li>Update documentation on trailing slash handling where type-level <code>@GetMapping</code>("/base") is combined with method level <code>@GetMapping</code>("/") <a href="https://github.com/spring-projects/spring-framework/issues/36198" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36198/hovercard">#36198</a></li> <li>Update documentation on the MediaType used for ProblemDetail <a href="https://github.com/spring-projects/spring-framework/issues/36192" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36192/hovercard">#36192</a></li> <li>Extract <code>DispatcherServlet</code> snippets <a href="https://github.com/spring-projects/spring-framework/issues/36175" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36175/hovercard">#36175</a></li> <li>Replace <code>getErrors()</code> with <code>getBindingResult()</code> in examples <a href="https://github.com/spring-projects/spring-framework/pull/36170" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36170/hovercard">#36170</a></li> <li>Refine CORS documentation to match latest changes <a href="https://github.com/spring-projects/spring-framework/issues/36156" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36156/hovercard">#36156</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to Apache POI 5.5 <a href="https://github.com/spring-projects/spring-framework/pull/36174" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36174/hovercard">#36174</a></li> <li>Upgrade to ASM 9.9.1 and Objenesis 3.5 <a href="https://github.com/spring-projects/spring-framework/issues/36243" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36243/hovercard">#36243</a></li> <li>Upgrade to Micrometer 1.6.3 <a href="https://github.com/spring-projects/spring-framework/issues/36287" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36287/hovercard">#36287</a></li> <li>Upgrade to Reactor 2025.0.3 <a href="https://github.com/spring-projects/spring-framework/issues/36288" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36288/hovercard">#36288</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Ivarz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Ivarz">@Ivarz</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/catturtle123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/catturtle123">@catturtle123</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chschu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chschu">@chschu</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/deejay1/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/deejay1">@deejay1</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dingqianwen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dingqianwen">@dingqianwen</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dungdm93/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dungdm93">@dungdm93</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/furaizi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/furaizi">@furaizi</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/izeye/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/izeye">@izeye</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kchung1995/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kchung1995">@kchung1995</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kilink/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kilink">@kilink</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/msridhar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/msridhar">@msridhar</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ngocnhan-tran1996/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ngocnhan-tran1996">@ngocnhan-tran1996</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pgoslatara/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pgoslatara">@pgoslatara</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/philwebb/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/philwebb">@philwebb</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pisek/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pisek">@pisek</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/shub-est/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/shub-est">@shub-est</a></p> spring-builds tag:github.com,2008:Repository/1148753/v6.2.16 2026-02-12T09:03:17Z v6.2.16 <h2>⭐ New Features</h2> <ul> <li>Improve performance of hashcode calculations for request mappings <a href="https://github.com/spring-projects/spring-framework/issues/36297" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36297/hovercard">#36297</a></li> <li>Improve performance of HandlerMethod bean lookup <a href="https://github.com/spring-projects/spring-framework/issues/36296" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36296/hovercard">#36296</a></li> <li>Improve performance of validation groups determination <a href="https://github.com/spring-projects/spring-framework/issues/36295" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36295/hovercard">#36295</a></li> <li>Improve performance of single pattern request mappings <a href="https://github.com/spring-projects/spring-framework/issues/36294" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36294/hovercard">#36294</a></li> <li>Optimize NamedParameterUtils#buildValueArray by lazily fetching SqlParameter <a href="https://github.com/spring-projects/spring-framework/issues/36232" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36232/hovercard">#36232</a></li> <li>Consistently close streams through try-with-resources in FileCopyUtils <a href="https://github.com/spring-projects/spring-framework/issues/36224" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36224/hovercard">#36224</a></li> <li>SqlBinaryValue and SqlCharacterValue should support InputStream content with undetermined length <a href="https://github.com/spring-projects/spring-framework/issues/36220" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36220/hovercard">#36220</a></li> <li><code>DataBufferUtils.write()</code> with NettyDataBuffer on JDK 25 hangs indefinitely <a href="https://github.com/spring-projects/spring-framework/issues/36189" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36189/hovercard">#36189</a></li> <li>WebClient (Reactor) attributes on Netty channel do not clear after connection release <a href="https://github.com/spring-projects/spring-framework/issues/36163" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36163/hovercard">#36163</a></li> <li>Reintroduce WebLogicJtaTransactionManager in Spring Framework 6.2.x <a href="https://github.com/spring-projects/spring-framework/issues/36152" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36152/hovercard">#36152</a></li> <li>DisconnectedClientHelper should detect presence of RestClientException and WebClientException separately <a href="https://github.com/spring-projects/spring-framework/issues/36150" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36150/hovercard">#36150</a></li> <li>Add DataAccessException and MessagingException to the excluded outermost exceptions in DisconnectedClientHelper <a href="https://github.com/spring-projects/spring-framework/issues/36135" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36135/hovercard">#36135</a></li> <li>Improve user check in TransportHandlingSockJsService <a href="https://github.com/spring-projects/spring-framework/issues/36129" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36129/hovercard">#36129</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>Avoid lock congestion in ConcurrentReferenceHashMap <a href="https://github.com/spring-projects/spring-framework/issues/36308" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36308/hovercard">#36308</a></li> <li>Resolved HttpEntity Controller argument does not reflect mutated HTTP headers <a href="https://github.com/spring-projects/spring-framework/issues/36301" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36301/hovercard">#36301</a></li> <li>AbstractMessageConverter does not support wildcards in supported MIME types <a href="https://github.com/spring-projects/spring-framework/issues/36286" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36286/hovercard">#36286</a></li> <li>Make <code>LocalEntityManagerFactoryBean#setDataSource</code> work on Hibernate as well as EclipseLink <a href="https://github.com/spring-projects/spring-framework/issues/36272" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36272/hovercard">#36272</a></li> <li>Deadlock might occur when calling <code>System.exit</code> on startup (against multiple shutdown hooks) <a href="https://github.com/spring-projects/spring-framework/issues/36268" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36268/hovercard">#36268</a></li> <li><code>Netty4HeadersAdapter.remove</code> returns empty list instead of <code>null</code> for non-existing key <a href="https://github.com/spring-projects/spring-framework/issues/36227" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36227/hovercard">#36227</a></li> <li><code>EclipseLinkConnectionHandle</code> can fail against transaction isolation race condition <a href="https://github.com/spring-projects/spring-framework/issues/36166" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36166/hovercard">#36166</a></li> <li>WiretapConnector leaks data buffers when response body not consumed <a href="https://github.com/spring-projects/spring-framework/issues/36051" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36051/hovercard">#36051</a></li> <li>UriComponentsBuilder loses the fragment when it consists of only a single character <a href="https://github.com/spring-projects/spring-framework/issues/36035" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36035/hovercard">#36035</a></li> <li><code>SimpleBeanInfoFactory</code> fails to reliably resolve read/write methods in type hierarchies with unresolved generics <a href="https://github.com/spring-projects/spring-framework/issues/36026" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36026/hovercard">#36026</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Fix links to JUnit User Guide <a href="https://github.com/spring-projects/spring-framework/issues/36218" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36218/hovercard">#36218</a></li> <li>Fix <code>LocalContainerEntityManagerFactoryBean#setPersistenceUnitName</code> javadoc <a href="https://github.com/spring-projects/spring-framework/issues/36206" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36206/hovercard">#36206</a></li> <li>Update documentation on trailing slash handling where type-level <code>@GetMapping</code>("/base") is combined with method level <code>@GetMapping</code>("/") <a href="https://github.com/spring-projects/spring-framework/issues/36200" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36200/hovercard">#36200</a></li> <li>Update documentation on the MediaType used for ProblemDetail <a href="https://github.com/spring-projects/spring-framework/issues/36193" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36193/hovercard">#36193</a></li> <li>Replace <code>getErrors()</code> with <code>getBindingResult()</code> in examples <a href="https://github.com/spring-projects/spring-framework/issues/36172" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36172/hovercard">#36172</a></li> <li>Upgrade Antora dependencies <a href="https://github.com/spring-projects/spring-framework/issues/36106" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36106/hovercard">#36106</a></li> <li>Fix typos and grammar <a href="https://github.com/spring-projects/spring-framework/issues/36023" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36023/hovercard">#36023</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Bump fast-xml-parser from 4.5.2 to 5.3.4 in /framework-docs <a href="https://github.com/spring-projects/spring-framework/issues/36239" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36239/hovercard">#36239</a></li> <li>Upgrade to ASM 9.9.1 and Objenesis 3.5 <a href="https://github.com/spring-projects/spring-framework/issues/36244" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36244/hovercard">#36244</a></li> <li>Upgrade to JUnit 5.14.2 <a href="https://github.com/spring-projects/spring-framework/issues/36148" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36148/hovercard">#36148</a></li> <li>Upgrade to Micrometer 1.15.9 <a href="https://github.com/spring-projects/spring-framework/issues/36290" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36290/hovercard">#36290</a></li> <li>Upgrade to Reactor 2024.0.15 <a href="https://github.com/spring-projects/spring-framework/issues/36289" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36289/hovercard">#36289</a></li> </ul> spring-builds tag:github.com,2008:Repository/1148753/v7.0.3 2026-02-04T10:55:39Z v7.0.3 <h2><g-emoji class="g-emoji" alias="warning">⚠️</g-emoji> Attention Required</h2> <ul> <li>Introduce Spring property to disable context pausing for tests <a href="https://github.com/spring-projects/spring-framework/issues/36117" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36117/hovercard">#36117</a></li> <li>Avoid unnecessary pausing of application contexts in the TestContext framework <a href="https://github.com/spring-projects/spring-framework/issues/36044" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36044/hovercard">#36044</a></li> </ul> <h2>⭐ New Features</h2> <ul> <li>DisconnectedClientHelper should detect presence of RestClientException and WebClientException separately <a href="https://github.com/spring-projects/spring-framework/pull/36141" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36141/hovercard">#36141</a></li> <li>Deprecate <code>PagedListHolder</code> and <code>PropertyComparator</code> for removal <a href="https://github.com/spring-projects/spring-framework/issues/36139" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36139/hovercard">#36139</a></li> <li>Add DataAccessException and MessagingException to the excluded outermost exceptions in DisconnectedClientHelper <a href="https://github.com/spring-projects/spring-framework/issues/36134" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36134/hovercard">#36134</a></li> <li>Support property placeholders in HTTP service registry <a href="https://github.com/spring-projects/spring-framework/pull/36126" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36126/hovercard">#36126</a></li> <li>Retain original requested bean class for SpringContainedBean <a href="https://github.com/spring-projects/spring-framework/pull/36116" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36116/hovercard">#36116</a></li> <li>Add task rejection support to SyncTaskExecutor's concurrency throttle <a href="https://github.com/spring-projects/spring-framework/issues/36114" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36114/hovercard">#36114</a></li> <li>Precompute <code>PropertyDescriptor</code> array in <code>SimpleBeanInfoFactory</code> <a href="https://github.com/spring-projects/spring-framework/issues/36112" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36112/hovercard">#36112</a></li> <li>Add option for <code>@ConcurrencyLimit</code> to throw rejection exception <a href="https://github.com/spring-projects/spring-framework/issues/36109" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36109/hovercard">#36109</a></li> <li>Support HttpComponents 5.6 <a href="https://github.com/spring-projects/spring-framework/issues/36100" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36100/hovercard">#36100</a></li> <li>Fix double encoding in <code>DefaultApiVersionInserter</code> <a href="https://github.com/spring-projects/spring-framework/pull/36097" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36097/hovercard">#36097</a></li> <li>Optimize single-char wildcard path matching performance <a href="https://github.com/spring-projects/spring-framework/pull/36095" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36095/hovercard">#36095</a></li> <li>Allow WebFlux ApiVersionResolver to return a Mono <a href="https://github.com/spring-projects/spring-framework/pull/36084" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36084/hovercard">#36084</a></li> <li>Configure HttpMessageConverters as a list <a href="https://github.com/spring-projects/spring-framework/pull/36083" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36083/hovercard">#36083</a></li> <li>HTTP Interface with an <code>@RequestBody Object</code> method parameter should use class of actual value <a href="https://github.com/spring-projects/spring-framework/issues/36078" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36078/hovercard">#36078</a></li> <li>Consistently declare <code>@Nullable</code> on parameter in <code>equals()</code> implementations <a href="https://github.com/spring-projects/spring-framework/pull/36075" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36075/hovercard">#36075</a></li> <li>Support listener registration for <code>@Transactional</code> triggered method rollbacks <a href="https://github.com/spring-projects/spring-framework/issues/36073" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36073/hovercard">#36073</a></li> <li>Introduce generalized <code>MethodFailureEvent</code> for use in <code>EventPublicationInterceptor</code> <a href="https://github.com/spring-projects/spring-framework/issues/36072" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36072/hovercard">#36072</a></li> <li>Avoid duplicate flushes in StringHttpMessageConverter <a href="https://github.com/spring-projects/spring-framework/issues/36065" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36065/hovercard">#36065</a></li> <li>When no API version is provided, static resources fail to load <a href="https://github.com/spring-projects/spring-framework/issues/36059" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36059/hovercard">#36059</a></li> <li>When no API version is provided, <code>/error</code> requests also fail. <a href="https://github.com/spring-projects/spring-framework/issues/36058" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36058/hovercard">#36058</a></li> <li>Declare <code>TaskCallback</code> return value as potentially nullable <a href="https://github.com/spring-projects/spring-framework/issues/36057" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36057/hovercard">#36057</a></li> <li>Fix case-insensitive semantics for LinkedCaseInsensitiveMap entrySet <a href="https://github.com/spring-projects/spring-framework/pull/36056" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36056/hovercard">#36056</a></li> <li>Update to NullAway 0.12.15 and fix new warnings <a href="https://github.com/spring-projects/spring-framework/pull/36054" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36054/hovercard">#36054</a></li> <li>Provide alternative to <code>execute(Retryable)</code> which avoids <code>RetryException</code> in favor of rethrowing the last original <code>RuntimeException</code> <a href="https://github.com/spring-projects/spring-framework/issues/36052" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36052/hovercard">#36052</a></li> <li>Simplify TransactionalOperator.executeAndAwait by removing Optional <a href="https://github.com/spring-projects/spring-framework/issues/36039" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36039/hovercard">#36039</a></li> <li>Deprecated MockMvcClientHttpRequestFactory is required for tests with HTTP service interface proxy <a href="https://github.com/spring-projects/spring-framework/issues/35989" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35989/hovercard">#35989</a></li> <li>Introduce Jackson XML codecs <a href="https://github.com/spring-projects/spring-framework/issues/35752" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35752/hovercard">#35752</a></li> <li>Support listener registration for <code>@Retryable</code> triggered retry executions <a href="https://github.com/spring-projects/spring-framework/issues/35382" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35382/hovercard">#35382</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>Fix <code>SmartFactoryBean</code> type matching for <code>ResolvableType.NONE</code> <a href="https://github.com/spring-projects/spring-framework/issues/36123" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36123/hovercard">#36123</a></li> <li><code>AbstractMessageSendingTemplate</code> ignores headers in <code>convertAndSend()</code> variant <a href="https://github.com/spring-projects/spring-framework/issues/36120" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36120/hovercard">#36120</a></li> <li><code>JmsClient.sendAndReceive()</code> fails if headers are included <a href="https://github.com/spring-projects/spring-framework/issues/36118" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36118/hovercard">#36118</a></li> <li><code>PropertyDescriptorUtils</code> does not reliably resolve overloaded write methods <a href="https://github.com/spring-projects/spring-framework/issues/36113" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36113/hovercard">#36113</a></li> <li>Fix context class resolution for nested types in <code>AbstractJacksonHttpMessageConverter</code> <a href="https://github.com/spring-projects/spring-framework/issues/36111" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36111/hovercard">#36111</a></li> <li><code>DefaultApiVersionInserter</code> encodes already encoded URI <a href="https://github.com/spring-projects/spring-framework/issues/36080" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36080/hovercard">#36080</a></li> <li>ConverterFactory nullness mismatch with Converter <a href="https://github.com/spring-projects/spring-framework/issues/36063" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36063/hovercard">#36063</a></li> <li>WiretapConnector leaks data buffers when response body not consumed <a href="https://github.com/spring-projects/spring-framework/issues/36050" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36050/hovercard">#36050</a></li> <li>CompilationException should not use -1 for line or column numbers when they are unknown <a href="https://github.com/spring-projects/spring-framework/issues/36041" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36041/hovercard">#36041</a></li> <li>org.springframework.core.test.tools.TestCompiler.Errors should handle case where warnings are turned into errors <a href="https://github.com/spring-projects/spring-framework/issues/36037" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36037/hovercard">#36037</a></li> <li>UriComponentsBuilder loses the fragment when it consists of only a single character <a href="https://github.com/spring-projects/spring-framework/issues/36029" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36029/hovercard">#36029</a></li> <li>Parameter names of the handler method are null in HandlerInterceptor::preHandle during first invocation of an endpoint <a href="https://github.com/spring-projects/spring-framework/issues/36024" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36024/hovercard">#36024</a></li> <li><code>PropertyDescriptorUtils</code> does not reliably resolve read/write methods in type hierarchies with generics <a href="https://github.com/spring-projects/spring-framework/issues/36019" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36019/hovercard">#36019</a></li> <li>Illegal reflection use against Hibernate Validator 9 on module path <a href="https://github.com/spring-projects/spring-framework/issues/36012" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36012/hovercard">#36012</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Clarify unversioned handler matching precedence <a href="https://github.com/spring-projects/spring-framework/pull/36125" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36125/hovercard">#36125</a></li> <li>Clarify meaning of maxAttempts in FixedBackOff vs. maxRetries in RetryPolicy <a href="https://github.com/spring-projects/spring-framework/issues/36119" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36119/hovercard">#36119</a></li> <li>Polishing AOT cache documentation <a href="https://github.com/spring-projects/spring-framework/pull/36108" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36108/hovercard">#36108</a></li> <li>Upgrade Antora dependencies <a href="https://github.com/spring-projects/spring-framework/issues/36105" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36105/hovercard">#36105</a></li> <li>Modernize the DispatcherServlet Locale documentation <a href="https://github.com/spring-projects/spring-framework/issues/36099" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36099/hovercard">#36099</a></li> <li>Fix Kotlin example in <code>Multipart Content</code> <a href="https://github.com/spring-projects/spring-framework/pull/36094" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36094/hovercard">#36094</a></li> <li>Remove <code>@EnableWebFlux</code> from documentation code snippets <a href="https://github.com/spring-projects/spring-framework/issues/36091" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36091/hovercard">#36091</a></li> <li>Fix Kotlin example in <code>CORS</code> and <code>Functional Endpoints</code> references <a href="https://github.com/spring-projects/spring-framework/pull/36089" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36089/hovercard">#36089</a></li> <li>Extract remaining WebMVC configuration snippets <a href="https://github.com/spring-projects/spring-framework/issues/36088" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36088/hovercard">#36088</a></li> <li>Remove the "Other Web Frameworks" documentation <a href="https://github.com/spring-projects/spring-framework/issues/36086" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36086/hovercard">#36086</a></li> <li>Fix reference links in <code>Configuration</code> page <a href="https://github.com/spring-projects/spring-framework/pull/36079" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36079/hovercard">#36079</a></li> <li>Document HttpHeaders#toSingleValueMap() case-sensitive behavior <a href="https://github.com/spring-projects/spring-framework/issues/36070" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36070/hovercard">#36070</a></li> <li>Correct <code>encode</code> Javadoc for <code>UriComponents</code> and <code>UriComponentsBuilder</code> <a href="https://github.com/spring-projects/spring-framework/pull/36040" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36040/hovercard">#36040</a></li> <li>Fix typos and grammar <a href="https://github.com/spring-projects/spring-framework/pull/36022" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/36022/hovercard">#36022</a></li> <li>Custom <code>@ExceptionHandler</code> silently ignored when <code>spring.mvc.problemdetails.enabled=true</code> without <code>@Order</code> <a href="https://github.com/spring-projects/spring-framework/issues/35982" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35982/hovercard">#35982</a></li> <li>Document how to discard response body with WebTestClient <a href="https://github.com/spring-projects/spring-framework/issues/35953" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35953/hovercard">#35953</a></li> <li>Modernize the view technologies section <a href="https://github.com/spring-projects/spring-framework/issues/35450" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35450/hovercard">#35450</a></li> <li>Remove JavaScript/Kotlin from ScriptEngine documentation <a href="https://github.com/spring-projects/spring-framework/issues/27919" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/27919/hovercard">#27919</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to Micrometer 1.16.2 <a href="https://github.com/spring-projects/spring-framework/issues/36145" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36145/hovercard">#36145</a></li> <li>Upgrade to Reactor 2025.0.2 <a href="https://github.com/spring-projects/spring-framework/issues/36144" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36144/hovercard">#36144</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/JKaplanEmpty-Nes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/JKaplanEmpty-Nes">@JKaplanEmpty-Nes</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MukjepScarlet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MukjepScarlet">@MukjepScarlet</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/TerryTaoYY/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/TerryTaoYY">@TerryTaoYY</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/haydenrear/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/haydenrear">@haydenrear</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jhan0121/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jhan0121">@jhan0121</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jher235/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jher235">@jher235</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marcphilipp/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marcphilipp">@marcphilipp</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mipo256/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mipo256">@mipo256</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/msridhar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/msridhar">@msridhar</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ngocnhan-tran1996/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ngocnhan-tran1996">@ngocnhan-tran1996</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/parkhojeong/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/parkhojeong">@parkhojeong</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/philipbolting/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/philipbolting">@philipbolting</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/playous/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/playous">@playous</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/quaff/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/quaff">@quaff</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/thelightway24/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/thelightway24">@thelightway24</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xyraclius/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xyraclius">@xyraclius</a></p> spring-builds tag:github.com,2008:Repository/1148753/v7.0.2 2025-12-11T16:27:40Z v7.0.2 <h2>⭐ New Features</h2> <ul> <li>Avoid unnecessary list creation and processing in <code>AbstractTestContextBootstrapper</code> <a href="https://github.com/spring-projects/spring-framework/issues/35995" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35995/hovercard">#35995</a></li> <li><code>AbstractTestContextBootstrapper</code> should resolve <code>ContextLoader</code> only once <a href="https://github.com/spring-projects/spring-framework/issues/35994" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35994/hovercard">#35994</a></li> <li>Log <code>RetryException</code> for <code>@Retryable</code> methods <a href="https://github.com/spring-projects/spring-framework/issues/35983" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35983/hovercard">#35983</a></li> <li>Consistently stop already started <code>Lifecycle</code> beans on cancelled refresh <a href="https://github.com/spring-projects/spring-framework/issues/35964" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35964/hovercard">#35964</a></li> <li>Support timeouts in <code>@Retryable</code> and <code>RetryPolicy</code> <a href="https://github.com/spring-projects/spring-framework/issues/35963" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35963/hovercard">#35963</a></li> <li>Use <code>==</code> instead of <code>instanceof</code> for primitive array type checks <a href="https://github.com/spring-projects/spring-framework/issues/35962" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35962/hovercard">#35962</a></li> <li>Introduce <code>MultiValueMapCollector</code> for use with streams <a href="https://github.com/spring-projects/spring-framework/pull/35958" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35958/hovercard">#35958</a></li> <li>Avoid package cycle caused by use of UriComponentsBuilder in ServletServerHttpRequest <a href="https://github.com/spring-projects/spring-framework/issues/35952" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35952/hovercard">#35952</a></li> <li>Target type in Converter interface should be <code>@Nullable</code> <a href="https://github.com/spring-projects/spring-framework/issues/35947" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35947/hovercard">#35947</a></li> <li>Provide access to attempt count in <code>RetryListener</code> as well as callbacks for the initial attempt <a href="https://github.com/spring-projects/spring-framework/issues/35940" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35940/hovercard">#35940</a></li> <li>DefaultHandshakeHandler should not log client faults on error level <a href="https://github.com/spring-projects/spring-framework/issues/35930" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35930/hovercard">#35930</a></li> <li>Log warning when meta-annotation is ignored due to types not present in classpath <a href="https://github.com/spring-projects/spring-framework/issues/35927" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35927/hovercard">#35927</a></li> <li>Revise <code>ApplicationContext#getId()</code> nullability to non-null <a href="https://github.com/spring-projects/spring-framework/issues/35925" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35925/hovercard">#35925</a></li> <li>Use concurrent set behind reactive <code>TransactionSynchronizationManager#registerSynchronization</code> <a href="https://github.com/spring-projects/spring-framework/issues/35921" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35921/hovercard">#35921</a></li> <li>Refine <code>AbstractKotlinSerializationHttpMessageConverter#canWrite</code> <a href="https://github.com/spring-projects/spring-framework/issues/35920" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35920/hovercard">#35920</a></li> <li>Register bean dependency for <code>Optional</code> injection point as well <a href="https://github.com/spring-projects/spring-framework/issues/35919" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35919/hovercard">#35919</a></li> <li>Change <code>canRead</code>/<code>canWrite</code> overrides to <code>Class</code> ones in <code>AbstractSmartHttpMessageConverter</code> <a href="https://github.com/spring-projects/spring-framework/issues/35916" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35916/hovercard">#35916</a></li> <li>Do not make HttpHeaders read-only in HttpEntity <a href="https://github.com/spring-projects/spring-framework/issues/35888" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35888/hovercard">#35888</a></li> <li>Add WebFlux SSE support with GSON <a href="https://github.com/spring-projects/spring-framework/issues/35884" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35884/hovercard">#35884</a></li> <li>Different ReactorNettyWebSocketSession call getId() may return the same value <a href="https://github.com/spring-projects/spring-framework/issues/35883" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35883/hovercard">#35883</a></li> <li>Refine nullability of <code>Assert#noNullElements</code> <a href="https://github.com/spring-projects/spring-framework/pull/35868" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35868/hovercard">#35868</a></li> <li>Allow configuring default maxIdleTime on InMemoryWebSessionStore. <a href="https://github.com/spring-projects/spring-framework/pull/35866" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35866/hovercard">#35866</a></li> <li>Refine <code>BindingReflectionHintsRegistrar</code> with <code>ObjectToObjectConverter</code> hints <a href="https://github.com/spring-projects/spring-framework/issues/35847" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35847/hovercard">#35847</a></li> <li>Add <code>resetCaches()</code> method to general CacheManager interface <a href="https://github.com/spring-projects/spring-framework/issues/35845" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35845/hovercard">#35845</a></li> <li>Enhance handleTypeMismatch error message in ResponseEntityExceptionHandler <a href="https://github.com/spring-projects/spring-framework/issues/35837" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35837/hovercard">#35837</a></li> <li>Add support for package-private <code>BeanRegistrar</code> in Spring AOT generated code <a href="https://github.com/spring-projects/spring-framework/issues/35803" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35803/hovercard">#35803</a></li> <li>Use ExtendedServletRequestDataBinder/ExtendedWebExchangeDataBinder for functional request binding <a href="https://github.com/spring-projects/spring-framework/issues/35800" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35800/hovercard">#35800</a></li> <li>Expose Collection on FragmentsRendering to facilitate Unit Tests <a href="https://github.com/spring-projects/spring-framework/issues/35775" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35775/hovercard">#35775</a></li> <li>Improve i18n-support for NoResourceFoundException <a href="https://github.com/spring-projects/spring-framework/pull/35758" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35758/hovercard">#35758</a></li> <li>Cache resolved singleton beans in injected <code>Provider</code> instance <a href="https://github.com/spring-projects/spring-framework/issues/35373" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35373/hovercard">#35373</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li><code>ContextConfigurationAttributes(Class)</code> constructor incorrectly sets <code>inheritLocations</code> to <code>false</code> <a href="https://github.com/spring-projects/spring-framework/issues/36000" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/36000/hovercard">#36000</a></li> <li>NullPointerException thrown from JdkClientHttpRequestFactory for null request header value <a href="https://github.com/spring-projects/spring-framework/issues/35996" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35996/hovercard">#35996</a></li> <li>State inconsistency in LazyConnectionDataSourceProxy when connection settings fail <a href="https://github.com/spring-projects/spring-framework/issues/35980" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35980/hovercard">#35980</a></li> <li>SubscriberInputStream#resume misuses parked thread reference <a href="https://github.com/spring-projects/spring-framework/pull/35978" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35978/hovercard">#35978</a></li> <li>Shared EntityManager returned by AbstractEntityManagerFactoryBean cannot be advised by AspectJ interceptor <a href="https://github.com/spring-projects/spring-framework/issues/35974" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35974/hovercard">#35974</a></li> <li>RestClient cannot make HEAD requests when the response declares gzip Content-Encoding <a href="https://github.com/spring-projects/spring-framework/issues/35966" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35966/hovercard">#35966</a></li> <li>ServerRequestObservationContext(s) miss Propagator.Getter method implementation <a href="https://github.com/spring-projects/spring-framework/issues/35965" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35965/hovercard">#35965</a></li> <li>Jackson used instead of kotlinx.serialization for more complex types <a href="https://github.com/spring-projects/spring-framework/issues/35960" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35960/hovercard">#35960</a></li> <li>Strong locking in <code>ConcurrentReferenceHashMap#computeIfAbsent</code> may cause context initialisation deadlock <a href="https://github.com/spring-projects/spring-framework/issues/35944" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35944/hovercard">#35944</a></li> <li>BridgeMethodResolver change in 6.2.13 breaks Spring Data entity introspection <a href="https://github.com/spring-projects/spring-framework/issues/35936" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35936/hovercard">#35936</a></li> <li>DefaultMessageListenerContainer does not clear Session and MessageConsumer for paused invokers <a href="https://github.com/spring-projects/spring-framework/issues/35932" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35932/hovercard">#35932</a></li> <li>Tighten cacheable decision behind <code>@Lazy</code> injection point <a href="https://github.com/spring-projects/spring-framework/issues/35917" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35917/hovercard">#35917</a></li> <li>AOT-generated bean definition does not consider name of <code>RuntimeBeanReference</code> using name and type <a href="https://github.com/spring-projects/spring-framework/issues/35913" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35913/hovercard">#35913</a></li> <li>Accidental fallback match for Collection-type beans due to <code>@Bean</code>-level qualifier annotation <a href="https://github.com/spring-projects/spring-framework/issues/35908" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35908/hovercard">#35908</a></li> <li><code>SingletonSupplier</code> should be defensive against <code>singletonInstance</code>/<code>initialized</code> visibility mismatch <a href="https://github.com/spring-projects/spring-framework/issues/35905" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35905/hovercard">#35905</a></li> <li>SortedResourcesFactoryBean does not accept non-existent resources anymore <a href="https://github.com/spring-projects/spring-framework/issues/35895" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35895/hovercard">#35895</a></li> <li>Support reading unresolvable types in <code>AbstractJacksonHttpMessageConverter</code> <a href="https://github.com/spring-projects/spring-framework/issues/35889" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35889/hovercard">#35889</a></li> <li>Refine Kotlin Serialization codec type checks <a href="https://github.com/spring-projects/spring-framework/issues/35885" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35885/hovercard">#35885</a></li> <li>UrlHandlerFilter also removes query parameters and fragment when using HTTP redirect <a href="https://github.com/spring-projects/spring-framework/issues/35873" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35873/hovercard">#35873</a></li> <li>Fix handling of <code>ServerSentEvent</code> with Jackson encoder <a href="https://github.com/spring-projects/spring-framework/issues/35872" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35872/hovercard">#35872</a></li> <li><code>@EnableResilientMethods</code> does not participate in globally enforced target class proxying <a href="https://github.com/spring-projects/spring-framework/issues/35863" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35863/hovercard">#35863</a></li> <li>RestTestClient can leak HTTP connections when no body expectations are performed <a href="https://github.com/spring-projects/spring-framework/issues/35784" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35784/hovercard">#35784</a></li> <li>Use provided ReactiveAdapterRegistry in BindingContext constructor <a href="https://github.com/spring-projects/spring-framework/pull/35771" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35771/hovercard">#35771</a></li> <li>PathMatchingResourcePatternResolver fails with URI in JAR manifest Class-Path entries <a href="https://github.com/spring-projects/spring-framework/issues/35682" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35682/hovercard">#35682</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Correct link to Reactive Libraries in reference docs <a href="https://github.com/spring-projects/spring-framework/pull/35970" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35970/hovercard">#35970</a></li> <li>Document that annotations are ignored if attributes reference types not present in the classpath <a href="https://github.com/spring-projects/spring-framework/issues/35959" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35959/hovercard">#35959</a></li> <li>Remove JUnit 4 based meta-annotation example <a href="https://github.com/spring-projects/spring-framework/issues/35903" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35903/hovercard">#35903</a></li> <li>Refer to "Spring Tools" instead of "Spring Tools for Eclipse" in reference manual <a href="https://github.com/spring-projects/spring-framework/issues/35901" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35901/hovercard">#35901</a></li> <li>Document that <code>SpringExtension</code> requires JUnit Jupiter 6.0 or higher <a href="https://github.com/spring-projects/spring-framework/issues/35900" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35900/hovercard">#35900</a></li> <li>Fix broken Javadoc links to methods <a href="https://github.com/spring-projects/spring-framework/pull/35899" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35899/hovercard">#35899</a></li> <li>Clarify JMS <code>sessionTransacted</code> flag for local versus global transaction <a href="https://github.com/spring-projects/spring-framework/issues/35897" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35897/hovercard">#35897</a></li> <li>Reference docs should not use obsolete "junit5" links <a href="https://github.com/spring-projects/spring-framework/issues/35892" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35892/hovercard">#35892</a></li> <li>Testing chapter references nonexistent Dependency Management documentation <a href="https://github.com/spring-projects/spring-framework/issues/35890" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35890/hovercard">#35890</a></li> <li>Wrong interface in WebFlux Documentation page for API Version <a href="https://github.com/spring-projects/spring-framework/issues/35887" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35887/hovercard">#35887</a></li> <li>Update reference documentation to use Jackson 3 <a href="https://github.com/spring-projects/spring-framework/issues/35886" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35886/hovercard">#35886</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to json-path 2.10.0 <a href="https://github.com/spring-projects/spring-framework/pull/35924" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35924/hovercard">#35924</a></li> <li>Upgrade to Micrometer 1.16.1 <a href="https://github.com/spring-projects/spring-framework/issues/35984" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35984/hovercard">#35984</a></li> <li>Upgrade to Reactor 2025.0.1 <a href="https://github.com/spring-projects/spring-framework/issues/35985" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35985/hovercard">#35985</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/JohnNiang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/JohnNiang">@JohnNiang</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Pankraz76/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Pankraz76">@Pankraz76</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/florianhof/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/florianhof">@florianhof</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ivonaest/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ivonaest">@ivonaest</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/izeye/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/izeye">@izeye</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jnizet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jnizet">@jnizet</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ngocnhan-tran1996/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ngocnhan-tran1996">@ngocnhan-tran1996</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/remeio/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/remeio">@remeio</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zamzterz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zamzterz">@zamzterz</a></p> spring-builds tag:github.com,2008:Repository/1148753/v6.2.15 2025-12-13T14:54:44Z v6.2.15 <h2>⭐ New Features</h2> <ul> <li>Avoid package cycle caused by use of UriComponentsBuilder in ServletServerHttpRequest <a href="https://github.com/spring-projects/spring-framework/issues/35954" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35954/hovercard">#35954</a></li> <li>DefaultHandshakeHandler should not log client faults on error level <a href="https://github.com/spring-projects/spring-framework/issues/35948" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35948/hovercard">#35948</a></li> <li>Use concurrent set behind reactive <code>TransactionSynchronizationManager#registerSynchronization</code> <a href="https://github.com/spring-projects/spring-framework/issues/35922" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35922/hovercard">#35922</a></li> <li>Expose Collection on FragmentsRendering to facilitate Unit Tests <a href="https://github.com/spring-projects/spring-framework/issues/35912" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35912/hovercard">#35912</a></li> <li>Different ReactorNettyWebSocketSession call getId() may return the same value <a href="https://github.com/spring-projects/spring-framework/issues/35911" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35911/hovercard">#35911</a></li> <li>Enhance handleTypeMismatch error message in ResponseEntityExceptionHandler <a href="https://github.com/spring-projects/spring-framework/issues/35878" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35878/hovercard">#35878</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>NullPointerException thrown from JdkClientHttpRequestFactory for null request header value <a href="https://github.com/spring-projects/spring-framework/issues/35998" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35998/hovercard">#35998</a></li> <li>State inconsistency in LazyConnectionDataSourceProxy when connection settings fail <a href="https://github.com/spring-projects/spring-framework/issues/35981" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35981/hovercard">#35981</a></li> <li>SubscriberInputStream#resume misuses parked thread reference <a href="https://github.com/spring-projects/spring-framework/issues/35979" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35979/hovercard">#35979</a></li> <li>PathMatchingResourcePatternResolver fails with URI in JAR manifest Class-Path entries <a href="https://github.com/spring-projects/spring-framework/issues/35967" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35967/hovercard">#35967</a></li> <li>Strong locking in <code>ConcurrentReferenceHashMap#computeIfAbsent</code> may cause context initialisation deadlock <a href="https://github.com/spring-projects/spring-framework/issues/35945" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35945/hovercard">#35945</a></li> <li>BridgeMethodResolver change in 6.2.13 breaks Spring Data entity introspection <a href="https://github.com/spring-projects/spring-framework/issues/35941" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35941/hovercard">#35941</a></li> <li>DefaultMessageListenerContainer does not clear Session and MessageConsumer for paused invokers <a href="https://github.com/spring-projects/spring-framework/issues/35935" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35935/hovercard">#35935</a></li> <li>Tighten cacheable decision behind <code>@Lazy</code> injection point <a href="https://github.com/spring-projects/spring-framework/issues/35918" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35918/hovercard">#35918</a></li> <li>Use provided ReactiveAdapterRegistry in BindingContext constructor <a href="https://github.com/spring-projects/spring-framework/issues/35914" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35914/hovercard">#35914</a></li> <li>Accidental fallback match for Collection-type beans due to <code>@Bean</code>-level qualifier annotation <a href="https://github.com/spring-projects/spring-framework/issues/35909" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35909/hovercard">#35909</a></li> <li>SortedResourcesFactoryBean does not accept non-existent resources anymore <a href="https://github.com/spring-projects/spring-framework/issues/35896" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35896/hovercard">#35896</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Document that annotations are ignored if attributes reference types not present in the classpath <a href="https://github.com/spring-projects/spring-framework/issues/35973" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35973/hovercard">#35973</a></li> <li>Fix broken Javadoc links to methods <a href="https://github.com/spring-projects/spring-framework/issues/35904" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35904/hovercard">#35904</a></li> <li>Refer to "Spring Tools" instead of "Spring Tools for Eclipse" in reference manual <a href="https://github.com/spring-projects/spring-framework/issues/35902" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35902/hovercard">#35902</a></li> <li>Clarify JMS <code>sessionTransacted</code> flag for local versus global transaction <a href="https://github.com/spring-projects/spring-framework/issues/35898" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35898/hovercard">#35898</a></li> <li>Reference docs should not use obsolete "junit5" links <a href="https://github.com/spring-projects/spring-framework/issues/35893" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35893/hovercard">#35893</a></li> <li>Testing chapter references nonexistent Dependency Management documentation <a href="https://github.com/spring-projects/spring-framework/issues/35891" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35891/hovercard">#35891</a></li> </ul> <h2>🔨 Dependency Upgrades</h2> <ul> <li>Upgrade to json-path 2.10.0 <a href="https://github.com/spring-projects/spring-framework/issues/35937" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35937/hovercard">#35937</a></li> <li>Upgrade to Micrometer 1.14.14 <a href="https://github.com/spring-projects/spring-framework/issues/35986" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35986/hovercard">#35986</a></li> <li>Upgrade to Reactor 2024.0.13 <a href="https://github.com/spring-projects/spring-framework/issues/35987" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35987/hovercard">#35987</a></li> </ul> spring-builds tag:github.com,2008:Repository/1148753/v7.0.1 2025-11-20T09:25:42Z v7.0.1 <h2>⭐ New Features</h2> <ul> <li>Align <code>RestOperations</code> Kotlin extensions nullability with Java one <a href="https://github.com/spring-projects/spring-framework/issues/35852" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35852/hovercard">#35852</a></li> <li>Add <code>resetCaches()</code> method to Caffeine/ConcurrentMapCacheManager <a href="https://github.com/spring-projects/spring-framework/issues/35840" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35840/hovercard">#35840</a></li> <li>Fix single-check idiom in <code>UnmodifiableMultiValueMap</code> <a href="https://github.com/spring-projects/spring-framework/pull/35822" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35822/hovercard">#35822</a></li> <li>Fix <code>Spliterator</code> characteristics in <code>ConcurrentReferenceHashMap</code> <a href="https://github.com/spring-projects/spring-framework/pull/35817" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35817/hovercard">#35817</a></li> <li>RestTestClient does not configure JsonPathAssertions in the same way as WebTestClient <a href="https://github.com/spring-projects/spring-framework/issues/35793" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35793/hovercard">#35793</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>Fix <code>JdbcOperations </code> Kotlin extensions <a href="https://github.com/spring-projects/spring-framework/issues/35846" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35846/hovercard">#35846</a></li> <li>Fix <code>getCacheNames()</code> concurrent access in NoOpCacheManager <a href="https://github.com/spring-projects/spring-framework/issues/35842" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35842/hovercard">#35842</a></li> <li>Annotation discovery regression for interfaces extending <code>BeanNameAware</code> and co. <a href="https://github.com/spring-projects/spring-framework/issues/35835" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35835/hovercard">#35835</a></li> <li>MissingPathVariableException produces wrong status code in ProblemDetail <a href="https://github.com/spring-projects/spring-framework/issues/35829" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35829/hovercard">#35829</a></li> <li>Refine <code>ParameterizedPreparedStatementSetter</code> nullability <a href="https://github.com/spring-projects/spring-framework/issues/35749" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35749/hovercard">#35749</a></li> <li>Fix HtmlUtils unescape for supplementary chars <a href="https://github.com/spring-projects/spring-framework/pull/35477" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35477/hovercard">#35477</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Fix cross-reference links in HtmlUnit sections <a href="https://github.com/spring-projects/spring-framework/pull/35853" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35853/hovercard">#35853</a></li> <li>Remove <code>@see</code> Javadoc references to deprecated PropertiesBeanDefinitionReader <a href="https://github.com/spring-projects/spring-framework/issues/35836" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35836/hovercard">#35836</a></li> <li>Replace <code>kotlin-issues</code> attribute reference <a href="https://github.com/spring-projects/spring-framework/pull/35820" data-hovercard-type="pull_request" data-hovercard-url="/spring-projects/spring-framework/pull/35820/hovercard">#35820</a></li> <li>Document semantics and behavior of <code>SpringExtension.getApplicationContext()</code> <a href="https://github.com/spring-projects/spring-framework/issues/35764" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35764/hovercard">#35764</a></li> </ul> <h2>❤️ Contributors</h2> <p>Thank you to all the contributors who worked on this release:</p> <p><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/juntae6942/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/juntae6942">@juntae6942</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kilink/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kilink">@kilink</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ngocnhan-tran1996/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ngocnhan-tran1996">@ngocnhan-tran1996</a>, and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/quaff/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/quaff">@quaff</a></p> spring-builds tag:github.com,2008:Repository/1148753/v6.2.14 2025-11-20T08:45:19Z v6.2.14 <h2>⭐ New Features</h2> <ul> <li>Add <code>resetCaches()</code> method to Caffeine/ConcurrentMapCacheManager <a href="https://github.com/spring-projects/spring-framework/issues/35841" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35841/hovercard">#35841</a></li> <li>Fix single-check idiom in <code>UnmodifiableMultiValueMap</code> <a href="https://github.com/spring-projects/spring-framework/issues/35831" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35831/hovercard">#35831</a></li> <li>Fix <code>Spliterator</code> characteristics in <code>ConcurrentReferenceHashMap</code> <a href="https://github.com/spring-projects/spring-framework/issues/35828" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35828/hovercard">#35828</a></li> </ul> <h2>🐞 Bug Fixes</h2> <ul> <li>MissingPathVariableException produces wrong status code in ProblemDetail <a href="https://github.com/spring-projects/spring-framework/issues/35856" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35856/hovercard">#35856</a></li> <li>Fix <code>getCacheNames()</code> concurrent access in NoOpCacheManager <a href="https://github.com/spring-projects/spring-framework/issues/35844" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35844/hovercard">#35844</a></li> <li>Annotation discovery regression for interfaces extending <code>BeanNameAware</code> and co. <a href="https://github.com/spring-projects/spring-framework/issues/35838" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35838/hovercard">#35838</a></li> <li>Fix HtmlUtils unescape for supplementary chars <a href="https://github.com/spring-projects/spring-framework/issues/35832" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35832/hovercard">#35832</a></li> </ul> <h2>📔 Documentation</h2> <ul> <li>Fix cross-reference links in HtmlUnit sections <a href="https://github.com/spring-projects/spring-framework/issues/35857" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35857/hovercard">#35857</a></li> <li>Remove <code>@see</code> Javadoc references to deprecated PropertiesBeanDefinitionReader <a href="https://github.com/spring-projects/spring-framework/issues/35854" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/35854/hovercard">#35854</a></li> </ul> spring-builds