Spring v5.2.0.M2 Release Notes

Release Date: 2019-05-09 // almost 5 years ago
  • ๐Ÿฑ โญ๏ธ New Features

    • 0๏ธโƒฃ DefaultCacheAwareContextLoaderDelegate should log which application context instance was stored or retrieved from cache #22925
    • ๐Ÿšฆ Replace signal materialization in TransactionAspectSupport with usingWhen #22911
    • ๐Ÿ”€ MergedAnnotation meta-data support #22909
    • ๐Ÿ‘Œ Support Publisher in MultipartBodyBuilder#asyncPart #22876
    • Consider adding is*Enabled() methods to LogAccessor #22862
    • โž• Add getRoot() to MergedAnnotation #22818
    • ๐Ÿ”ฆ Expose StompSubProtocolWebSocketHandler metrics #22807
    • Create RSocketRequesterBuilder in spring-messaging #22806
    • Return value doesn't serialize to JSON when return type is Mono of Interface in WebFlux #22803
    • Some trivial optimization in method populateBean() #22792
    • Consistently implement decodeToMono by joining buffers first #22783
    • โž• Add decodeDataBuffer to Decoder and encodeValue to Encoder #22782
    • โž• Add coroutines support to RSocket @MessageMapping and RSocketRequester #22780
    • โž• Add CBOR codec (single value only) #22767
    • โž• Add route(RequestPredicate, HandlerFunction) variant to RouterFunctions builder #22701
    • ๐Ÿ– Handle Optional<?> @RequestParam() when generating URL using MvcUriComponentsBuilder #22656
    • โž• Add reactive transaction support SPI #22646
    • ๐Ÿ‘ Reactive transaction management support #22590
    • ๐Ÿ‘Œ Support constructor injection without @Autowired when using JUnit Jupiter in spring-test #22286
    • โž• Add protected methods to resolve the target type for payload arguments [SPR-17503] #22035
    • ๐Ÿ‘ Consumes condition support for optional content [SPR-17478] #22010
    • Consistent error handling when streaming with servlet vs reactive stack [SPR-17440] #21972
    • Create a WebFilter for ServerWebExchange Reactor Context [SPR-17213] #21746
    • ๐Ÿ‘‰ Make WebFlux multipart support fully Reactive [SPR-17122] #21659

    ๐Ÿฑ ๐Ÿž Bug Fixes

    • ๐Ÿ”ง @Configuration(proxyBeanMethods = false) cannot implement ImportAware #22920
    • ๐Ÿ›  Fix suspend/resume in AbstractReactiveTransactionManager #22918
    • ๐Ÿ›  Fix suspending handler method type handling #22827
    • ๐Ÿ”— LinkedCaseInsensitiveMap track removals via keySet, entrySet or values #22821
    • ๐Ÿ‘Œ Support suspending functions returning Flow #22820
    • ๐Ÿ”— LinkedMultiValueMap.getFirst - check that values is not empty #22421

    ๐Ÿ“” Documentation

    โฌ†๏ธ ๐Ÿ”จ Dependency Upgrades

    • โฌ†๏ธ Upgrade to Reactor Dysprosium #22930

    ๐Ÿฑ โค๏ธ Contributors

    ๐Ÿš€ We'd like to thank all the contributors who worked on this release!