⭐ New Features
- Nullability
@Contract
declaration forCodeFlow.isIntegerForNumericOp()
is unnecessary #34985 - Serializer hint registration is broken for some Kotlin classes #34979
- Clients created using JdkClientHttpRequestFactory set content-length for GET, DELETE and HEAD requests #34971
- Support registration of non-public
BeanDefinitionReader
via@ImportResource
#34928 - Make max size for pattern cache in
PathPatternMatchableHandlerMapping
configurable #34918 - Add optimized DataBufferInputStream overrides #34799
🐞 Bug Fixes
- Encode non-printable character in Content-Disposition parameter #35034
- Allow update of existing
WebSession
after max sessions limit is reached #35013 - Fix support for collections in
AbstractKotlinSerializationHttpMessageConverter
#34992 - PathPattern#combine throws StringIndexOutOfBoundsException #34986
- Fix AOT code generation for autowired inner class constructor #34974
- AbstractFileResolvingResource.exists closes JAR resource input streams with v6.2.7 #34955
- Enhanced configuration class fails to call package-visible superclass constructor on WebSphere #34950
- Fix
REPLY_CHANNEL
header check inMessageHeaderAccessor
#34949 MockEnvironment
does not acceptObject
property values #34947PropertySourcesPlaceholderConfigurer
no longer usesConversionService
fromEnvironment
#34936@Contract
forStreamUtils.drain()
incorrectly declaresnull
results in an exception #34933- Inconsistent behavior injecting null
@Bean
factory parameter #34929 - MockHttpServletRequest.addHeader duplicates "Content-Type" header #34913
- BeanUtils.getParameterNames fails for Kotlin data classes #34760
- JAXB message converters ignore Content-Type charset #34745
- Aspect Not Triggered After Restart in Spring Boot 3.4.x (But Works in 3.3.10) #34735
- Add caching headers to unmodified static resources #34614
📔 Documentation
- Apply gh-34856 to MockClientHttpRequest in testfixture package #35031
- Fix
ResourceHttpRequestHandler#setHeaders
JavaDoc #35004 - Remove reference to AspectJ Eclipse Javadoc #35000
- Mention CompletableFuture in Spring MVC "Asynchronous Requests" section of reference manual #34991
- Fix exception name in ModelAttribute docs #34980
- Fix syntax in
@SqlGroup
example #34972 - Update X-Forwarded-Proto doc to say https / http #34959
- Update Guidance on Best Practices To Test Code That Uses RestClient and RestTemplate #34892
- Add a section for WebAsyncTask in mvc-ann-async.adoc #34885
- Clarify what
@RestControllerAdvice
vs@ControllerAdvice
apply to by default #34866 - Improve Javadoc for
@ExceptionHandler
#34554
🔨 Dependency Upgrades
- Upgrade to HttpComponents HttpClient 5.5 #34941
- Upgrade to Micrometer 1.14.8 #35020
- Upgrade to Reactor 2024.0.7 #35021
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Allan-QLB, @Aurh1l, @BowieDu, @DhruvTheDev1, @Dongnyoung, @JimmyAx, @addoDev, @dmitrysulman, @izeye, @jjank, @kilink, @mbazos, @msnsaeed71, @ngocnhan-tran1996, @nosan, @remeio, @vpavic, and @yuzawa-san