github spring-projects/spring-framework v6.1.0-M4

latest releases: v6.2.0-RC3, v6.2.0-RC2, v6.1.14...
pre-release15 months ago

⭐ New Features

  • Support resource patterns in @TestPropertySource locations #31055
  • Support text blocks for inlined properties in @TestPropertySource #31053
  • @Bean method should be always allowed to override scanned class matching its return type #31052
  • Support finding repeatable annotations in AnnotatedTypeMetadata #31041
  • Fail fast if a @Bean method has a void return type #31007
  • Use Class#arrayType() where feasible #31002
  • ReactiveAdapterRegistry is 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 @HttpExchange for server side handling #30980
  • Fail on error by default during test AOT processing #30977
  • Deprecate applyBeanPostProcessorsBeforeInitialization and applyBeanPostProcessorsAfterInitialization in the AutowireCapableBeanFactory interface #30974
  • Provide methods for obtaining include/exclude path patterns in MappedInterceptor #30971
  • Introduce SimpleAsyncTaskScheduler with virtual threads support (as an alternative to ThreadPoolTaskScheduler) #30956
  • Support declarative mode for data binding #30948
  • Support customizing the bind parameter name for constructor binding #30947
  • Support @RSocketExchange for responding #30936
  • Introduce JdbcClient with unified parameter capabilities (as a JDBC variant of DatabaseClient) #30931
  • Allow preferred constructor to be defined at the BeanDefinition level #30917
  • Remove obsolete native image reflection hint registration for TransactionDefinition constants #30854
  • Deprecate Constants utility and stop using it internally #30851
  • Use Long.parseLong(CharSequence,int,int,int) to avoid intermediate String creation #30710
  • Support Kotlin value class properties in SpEL #30468
  • Add observability support for JMS #30335
  • @TransactionalEventListener does not work with SimpleApplicationEventMulticaster.setTaskExecutor #30244
  • Direct autowiring of existing collection subtype bean if ApplicationContext contains beans of type T #30022
  • Clarify FactoryBean.OBJECT\_TYPE\_ATTRIBUTE supported types #29799
  • Add support for Kotlin inline/value classes in BeanUtils #28638
  • Publish event for @TransactionalEventListener with Spring WebFlux #27515
  • Introduce TransactionExecutionListener callback 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
  • @Component not picked up by @ComponentScan if it has the same simple name as the main class #25952
  • Support custom TimeUnits in StopWatch #25803
  • @Lookup doesn'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 afterThrowing method signature in ThrowsAdviceInterceptor #1896
  • Support resource patterns in @PropertySource locations [SPR-16785] #21325
  • Increase reusability of Validator [SPR-15314] #19877
  • Support additional file formats in ReloadableResourceBundleMessageSource #18990
  • Reactive types support for @Cacheable methods [SPR-14235] #17920
  • Support caching annotations for CompletableFuture return values [SPR-12967] #17559

🐞 Bug Fixes

  • Move ServerWebExchange Kotlin extensions to the right package #31046
  • Spring does not find all @ComponentScan or @PropertySource annotations #30941
  • 404 on static resource does not return ProblemDetail response #30930

📔 Documentation

  • Document @AliasFor support in AnnotatedTypeMetadata.getAnnotationAttributes() #31042
  • Update documentation for HTTP Interface return values #30959
  • Update documentation for data binding improvements #30952
  • Use of ApplicationEventPublisher in 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

Don't miss a new spring-framework release

NewReleases is sending notifications on new releases.