v6.2.0-RC2
Pre-release
Pre-release
spring-builds
released this
17 Oct 11:34
·
430 commits
to main
since this release
⭐ New Features
- Verify static resource location ends on slash #33712
- Support record canonical constructor in
BeanUtils
#33707 - Rename
OverrideMetadata
for Bean Overrides #33702 - Rename
BeanOverrideStrategy
enum constants #33701 - Polish
ServletWebRequest
#33698 - Remove support for relative paths in static resource handling #33687
- Add
value
attribute alias to@MockitoBean
and@MockitoSpyBean
#33680 - Reject bean names with factory prefix for Bean Overrides #33674
- Revise handling of URI variable syntax in WhatWG URL parser #33673
- Introspect pre-registered singletons in
preDetermineBeanTypes
as well #33668 - Remove unnecessary array length check #33655
- Polish
CorsConfiguration
#33650 - Add URL Parser for RFC 3986 #33639
- Handle X-Forwarded-Prefix parsed by Reactor-Netty in ReactorServerHttpRequest #33638
- RestClient should auto-detect ReactorClientHttpRequestFactory #33635
- Improve random source in SockJS support #33632
- Stop replacing existing Bean Override definitions with pseudo-definitions #33627
- Introduce
enforceOverride
flag in@TestBean
and@MockitoBean
#33613 - Refactor unwrapOptional method to improve readability and performance #33612
ServerSentEvent
should implementequals()
andhashCode()
#33606- Reduce the GC pressure due to
NoTransactionInContextException
instances #33601 - Make
DynamicPropertyRegistrarBeanInitializer
public #33593 - Improve
toString()
forAbstractBeanDefinition
andBeanMetadataAttribute
#33579 - Add utility methods for resource handler checks #33574
- UrlHandlerFilter should not strip the trailing slash from the contextPath URL #33565
- AbstractGenericHttpMessageConverter has no constructor taking a Charset #33563
- JdbcClient ResultQuerySpec - Provide a optionalValue() method #33560
- Add read timeout setter on HttpComponentsClientHttpRequestFactory #33556
- Fix virtual thread pinning caused by synchronized blocks in
EclipseLinkJpaDialect
#33546 - Add
RestClient.Builder#messageConverters(List)
#33536 - Refine null-safety for additional
Assert
methods #33530 - Throw runtime error for
@TransactionalEventListener
when@Transactional
propagation level is notREQUIRES_NEW
orNOT_SUPPORTED
#33470 - With virtual threads enabled, long-running
fixedDelay
tasks blockfixedRate
tasks #33408 - Provide a public mechanism for detecting if AOT processing is in progress #33388
- Use only one request timeout mechanism in JdkClientHttpRequest #33090
- Support bean override features with AOT and native image #32933
- Limit reflective operations in
BeanInstanceSupplier
with Spring AOT #32834 - Mixin created with
IntroductionInterceptor
results in dynamic proxy instead of CGLIB proxy #31304 - Lenient URI parsing in ServletServerHttpRequest #30489
- Exclude authorization messages from ERROR logging in StompSubProtocolHandler #28252
- Propagate fully capable ServletContext in AbstractContextLoaderInitializer (for SessionCookieConfig access) #22319
🐞 Bug Fixes
- PropertySourcesPropertyResolver no longer converts to non CharSequence types #33727
- Lower-casing of scheme in UriComponentsBuilder breaks use of URI variables #33699
- Remove
@MockitoBeanSettings
and support forMockitoSession
management #33692 @MockitoBeanSettings
is not inherited in@Nested
test class #33685- AOT fails when generating code for a component declared as an inner-class #33683
@MockitoBean
reset andMockitoSession
management do not work with@Nested
tests #33676- DurationFormatterUtils should not attempt to parse an empty duration #33669
DefaultServerHttpRequestBuilder
can create case-sensitiveHeaders
instances #33666- Context cache is broken if two Bean Override fields declare annotations in different order #33633
- Test bean override support should only override singletons #33602
- Kotlin checked exception thrown from proxy service causes
UndeclaredThrowableException
#33585 - Autowiring of generic beans with array types is broken since 6.2.0-M1 #33535
AnnotatedBeanDefinitionReader
should respect@Fallback
qualifier analogous to@Primary
#33533
📔 Documentation
- Add Javadoc since for headers() in Delete/Patch/Post/PutExchange #33723
- Document XML parser usage against security false positives #33713
- Update scheduling.adoc #33709
- Document
TestExecutionListener
implementations introduced in 6.2 #33661 - Replace RFC 7807 with RFC 9457 in documentation #33594
- Document that
TestContextAnnotationUtils
is required for proper@Nested
test class support #33586 - Replace
e.g.
withfor example
#33515 - Document non-default candidate beans and Java-based configuration of non-autowire candidate beans #33392
🔨 Dependency Upgrades
- Upgrade to Jackson 2.18 #33615
- Upgrade to Micrometer 1.14.0-RC1 #33648
- Upgrade to Reactor 2024.0.0-RC1 #33636
❤️ Contributors
Thank you to all the contributors who worked on this release:
@EugeneNik, @J-unStiN, @Jaeyoung22, @Seungpang, @SungbinYang, @TAKETODAY, @boulce, @cfredri4, @chemicL, @chschu, @cmagnuson, @izeye, @khyojun, @kimjuke, @ngocnhan-tran1996, @quaff, @smartandhandsome, and @zinzoddari