v7.0.0-M7
Pre-release
Pre-release
⭐ New Features
- LocalDataSourceJobStore should re-initialize statically registered Quartz ConnectionProvider on context restart #35208
- Make rootObject parameter consistently nullable #35206
- Refine multipart converter registration in HttpMessageConverters #35203
- Introduce
getSource()inApplicationContextEventwith covariant return type #35197 - Introduce
ContextRestartedEventas a subtype ofContextStartedEvent#35194 - Align HttpMessageConverters builder with WebFlux codecs variants #35187
- Transaction-scoped resource binding in
TransactionSynchronizationManager#35182 - Use flexible generics nullness in
RestClient.RequestHeadersSpec.ExchangeFunction#35180 - Introduce
ConfigurableApplicationContext.restart()method #35171 - Pause unused application contexts in the TestContext framework #35168
- Skip initialization of a
NullBean#35165 - Short-circuit matching algorithm in
InstanceFilter#35161 - Support direct matching against exceptions in
ExceptionTypeFilter#35160 InstanceFilterandExceptionTypeFiltershould setmatchIfEmptytotrueby default #35158- Require explicit constraints in
@Contract#35157 - Specify fetchSize/maxRows/queryTimeout per statement in JdbcClient #35155
- Include MethodParameter[] parameters in HttpRequestValues.Processor #35148
- Deprecate
DaoSupportclasses #35145 - Remove
maxDuration/maxElapsedTimesupport fromRetryPolicy#35144 - Introduce
@ConcurrencyLimitannotation based onConcurrencyThrottleInterceptor#35133 - Consistently implement
toString()inBackOffstrategies #35120 - Support API versioning for functional endpoints #35113
- Migrate
orm.hibernate5toorm.jpa.hibernatepackage for Hibernate ORM 7.0 #35111 - Redesign
RetryPolicyto directly incorporateBackOff#35110 - Ability to limit list of supported API versions to explicitly configured ones for Spring MVC #35105
- Refine nullability of
PropertyResolver.getProperty(key: String)extension #35104 - Support for exposing additional object types in
SmartFactoryBean#35101 - Add missing
@NullabletoMethodInvoker::setArgumentsparameter #35089 - Support
@RequestBodyin interface method when computing "consumes" condition #35086 - Consistent validation of supported API versions #35082
- Resolve optional HandlerMethod parameter of
@ExceptionHandlermethod to null #35067 - Add ability to decorate HttpExchangeAdapter through HttpServiceProxyFactory #35059
- Introduce
BuilderAPI and factory methods forRetryPolicy#35058 - Revise
RetryTemplatefor alignment with Reactor (in preparation for@Retryable) #35057 - Add ApiVersionResolver based on parameter in media type #35050
- Support deprecation information in API versioning #35049
- Add support for configuring
SslInfoinWebTestClient#35042 - Make built-in
RetryPolicyimplementationsfinal#35040 - Specify flexible generics nullness in spring-jdbc #34911
- Allow usage of
@CheckReturnValueon types and constructors #34910 - Support repeatable writes in FormHttpMessageConverter#writeMultipart #34859
- Convert applicable methods in
Scopetodefaultmethods #34757 - Add public method to get bean order #34712
- Discard further rows once maxRows has been reached #34709
- Support
DefaultWebFilterChainallowing the current filter to provide its name explicitly #34702 - API Versioning Support #34565
- Introduce
@RetryableAOP support (based oncore.retryand Reactor retry functionality) #34529 - Revisit converters and codecs default setup in HTTP stacks #33894
ConfigurationBeanNameGeneratorfor@Bean-annotated methods #33448- Qualified
EntityManager/EntityManagerFactoryinjection (aligned with Jakarta Persistence 3.2) #33414 - Introduce JmsClient with customizable send/receive operations #32501
- Allow conditional handling of 404 with HTTP Interface clients #32105
- Allow to set TTL (and other QoS-related settings) on a per-message (and/or per-send) basis #26840
🐞 Bug Fixes
- Allow ordering of
HttpMessageConverterss throughWebMvcConfigurer.configureMessageConverters(HttpMessageConverters.Builder)#35177 - Content-Disposition response header duplicated for failed StreamingResponseBody #35116
- CachingMetadataReaderFactory does not cache all metadatareader calls #35112
sslInfo()should return the builder forMockServerHttpRequest#35075- HttpService group adapters could not be instantiated in a native image #35038
📔 Documentation
- Improve URLs in Validation chapter of the reference manual #35181
- Update Spring MVC message converters documentation #35166
- Add a note about Field/Method vs. TYPE_USE annotations in reference docs #35098
- Document intention of
toString()inHandlerMethod#35055 - Add section in docs on byte-range requests in Spring MVC and WebFlux #35052
🔨 Dependency Upgrades
- Upgrade to Jetty 12.1.0.beta1 #35084
- Upgrade to Kotlin 2.2.0 #34453
- Upgrade to Micrometer 1.16.0-M1 #35170
- Upgrade to Reactor 2025.0.0-M5 #35169
❤️ Contributors
Thank you to all the contributors who worked on this release:
@Allan-QLB, @NeatGuyCoding, @OlgaMaciaszek, @Pankraz76, @izeye, @ngocnhan-tran1996, @quaff, @remeio, @renatomameli, @scordio, and @wonyongg