Spring Framework 5.2 RC2 releases

Spring Framework

The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications – on any kind of deployment platform.

A key element of Spring is infrastructural support at the application level: Spring focuses on the “plumbing” of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.Spring Framework



  • Core technologies: dependency injection, events, resources, i18n, validation, data binding, type conversion, SpEL, AOP.
  • Testing: mock objects, TestContext framework, Spring MVC Test, WebTestClient.
  • Data Access: transactions, DAO support, JDBC, ORM, Marshalling XML.
  • Spring MVC and Spring WebFlux web frameworks.
  • Integration: remoting, JMS, JCA, JMX, email, tasks, scheduling, cache.
  • Languages: Kotlin, Groovy, dynamic languages.

Changelog v5.2 RC2

⭐️ New Features

  • Invalid partial content requests possible with start byte = resource-byte-count #23576
  • Support invoking static methods with ReflectionTestUtils.invokeMethod() #23504
  • Detect ClientHttpConnector to use by checking classpath #23493
  • Remove statusCode state from ContentCachingResponseWrapper #23490
  • Fix “array index out of bounds” problem reported by LGTM.com #23485
  • Explicit attribute overrides configured via @AliasFor not supported for components picked up via component scanning #23402
  • Provide a way to predict bean types without initializing FactoryBeans #23374
  • Pre-allocate NoTransactionException in TransactionContextManager #23360
  • Use System.nanoTime() instead of System.currentTimeMillis() in StopWatch #23235
  • Correct encoding and decoding of “message/x.rsocket.routing.v0” #23137
  • Add support for Coroutines transactions #22915

🐞 Bug Fixes

  • Cannot use relative path following placeholder in @TestPropertySource locations #23544
  • Spring Webflux 5.2.0.M2 – Kotlin coroutines – ServerRequest.awaitPrincipal always null #22986

📔 Documentation

  • Fix typos related to indefinite articles #23555
  • Adding Kotlin code examples to Testing documentation. #23545
  • Add @since for getCacheFilter and setCacheFilter #23519
  • Wiki build instructions for local Maven repo are outdated #23517
  • Fix unmatched parenthesis in the documentation of ContextHierarchy #23487
  • Modify the javadoc of @EnableWebFlux annotation #23457
  • Kotlin examples in Spring Core docs should use extension functions with reified types #23456
  • Improve language-switch CSS #23454
  • Fix data access documentation typo #23450
  • Fix / in Javadoc #23439
  • Reference documentation for ContextClosedEvent is misleading #23436
  • Reference documentation for @Autowired‘s required attribute is misleading #23428
  • Provide code samples in Kotlin in addition to Java [SPR-17245] #21778

🔨 Dependency Upgrades

  • Upgrade to Reactor Dysprosium-RC1 #23579
  • Upgrade to RSocket 1.0 RC3 #23543
  • Upgrade to Kotlin 1.3.50 #23536
  • Upgrade to Kotlin Coroutines 1.3.0 #23535
  • Upgrade to CGLIB 3.3 #23453