Skip to content
Pre-release

@snicoll snicoll released this May 9, 2019 · 759 commits to master since this release

⭐️ New Features

  • 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!

Assets 2
You can’t perform that action at this time.