v6.1.0-M4
Pre-release
      Pre-release
    
        
          ·
          
            6302 commits
          
          to main
          since this release
        
        
        
⭐ New Features
- Support resource patterns in @TestPropertySourcelocations #31055
- Support text blocks for inlined properties in @TestPropertySource#31053
- @Beanmethod should be always allowed to override scanned class matching its return type #31052
- Support finding repeatable annotations in AnnotatedTypeMetadata#31041
- Fail fast if a @Beanmethod has a void return type #31007
- Use Class#arrayType()where feasible #31002
- ReactiveAdapterRegistryis not compatible with Mutiny 2 #31000
- Avoid thread pinning in SseEmitter write operations #30996
- Add support for property file encoding in @TestPropertySource#30982
- Support custom properties file formats in @TestPropertySource#30981
- Support @HttpExchangefor server side handling #30980
- Fail on error by default during test AOT processing #30977
- Deprecate applyBeanPostProcessorsBeforeInitializationandapplyBeanPostProcessorsAfterInitializationin theAutowireCapableBeanFactoryinterface #30974
- Provide methods for obtaining include/exclude path patterns in MappedInterceptor#30971
- Introduce SimpleAsyncTaskSchedulerwith virtual threads support (as an alternative toThreadPoolTaskScheduler) #30956
- Support declarative mode for data binding #30948
- Support customizing the bind parameter name for constructor binding #30947
- Support @RSocketExchangefor responding #30936
- Introduce JdbcClientwith unified parameter capabilities (as a JDBC variant ofDatabaseClient) #30931
- Allow preferred constructor to be defined at the BeanDefinitionlevel #30917
- Remove obsolete native image reflection hint registration for TransactionDefinitionconstants #30854
- Deprecate Constantsutility and stop using it internally #30851
- Use Long.parseLong(CharSequence,int,int,int)to avoid intermediateStringcreation #30710
- Support Kotlin value class properties in SpEL #30468
- Add observability support for JMS #30335
- @TransactionalEventListenerdoes not work with- SimpleApplicationEventMulticaster.setTaskExecutor#30244
- Direct autowiring of existing collection subtype bean if ApplicationContextcontains beans of typeT#30022
- Clarify FactoryBean.OBJECT\_TYPE\_ATTRIBUTEsupported types #29799
- Add support for Kotlin inline/value classes in BeanUtils#28638
- Publish event for @TransactionalEventListenerwith Spring WebFlux #27515
- Introduce TransactionExecutionListenercallback API #27479
- R2DBC - DatabaseClient - Add bind method to accept an object #27282
- Introduce RowMapper with automatic binding to fields #26594
- Add support for Class-based mapping in DatabaseClient #26021
- @Componentnot picked up by- @ComponentScanif it has the same simple name as the main class #25952
- Support custom TimeUnits in StopWatch #25803
- @Lookupdoesn't work in case of AbstractBeanFactory's cacheBeanMetadata=false #25749
- Injection of List is inconsistent with Resource[] #24845
- Provide guidance and better diagnostics when dependency injection makes a bean ineligible for complete post-processing #24092
- Availability of a bean definition's resolved factory method depends upon a side-effect of getBeanNamesForType which is lost when metadata caching is disabled #23795
- Validate afterThrowingmethod signature inThrowsAdviceInterceptor#1896
- Support resource patterns in @PropertySourcelocations [SPR-16785] #21325
- Increase reusability of Validator[SPR-15314] #19877
- Support additional file formats in ReloadableResourceBundleMessageSource#18990
- Reactive types support for @Cacheablemethods [SPR-14235] #17920
- Support caching annotations for CompletableFuturereturn values [SPR-12967] #17559
🐞 Bug Fixes
- Move ServerWebExchangeKotlin extensions to the right package #31046
- Spring does not find all @ComponentScanor@PropertySourceannotations #30941
- 404 on static resource does not return ProblemDetail response #30930
📔 Documentation
- Document @AliasForsupport inAnnotatedTypeMetadata.getAnnotationAttributes()#31042
- Update documentation for HTTP Interface return values #30959
- Update documentation for data binding improvements #30952
- Use of ApplicationEventPublisherin a reactive call stack [SPR-16481] #21025
🔨 Dependency Upgrades
- Upgrade to JUnit 5.10 #30970
- Upgrade to Micrometer 1.12.0-M2 #30997
- Upgrade to Reactor 2023.0.0-M2 #31014
❤️ Contributors
Thank you to all the contributors who worked on this release:
@OlgaMaciaszek, @alidandach, @devdilson, @graceyu-own, @izeye, @kilink, @plx927, and @remeio