⭐ New Features
- SmartLifecycle should provide default methods [SPR-17188] #21723
- SimpleClientHttpResponse.close() does not call close() on URLConnection.getInputStream() if SimpleClientHttpResponse.getBody() was not called before [SPR-17181] #21717
- Add JettyResourceFactory [SPR-17179] #21715
- Avoid argument resolution overhead for no-arg factory methods [SPR-17171] #21707
- Use default methods on Smart/GenericApplicationListener [SPR-17163] #21699
- Introduce DataSize type [SPR-17154] #21691
- BeanFactoryUtils.transformedBeanName() creates a lot of GC pressure [SPR-17151] #21688
- Exception hierarchy under WebClientResponseException for the WebClient [SPR-17145] #21682
- More easily set the order on DefaultSimpUserRegistry [SPR-17142] #21679
- limitExceeded is never reset in ConcurrentWebSocketSessionDecorator [SPR-17140] #21677
- Detect GraalVM with system property in SerializableTypeWrapper [SPR-17136] #21673
- BeanDefinition-aware BeanPostProcessors should clear cache in case of bean definition reset [SPR-17126] #21663
- ScriptUtils.containsSqlScriptDelimiters does not take into account escaped quotes [SPR-17120] #21657
- SharedEntityManagerCreator should support deferred access to StoredProcedureQuery output parameters [SPR-17115] #21652
- Add support for adding cookies as headers in MockHttpServletResponse [SPR-17110] #21647
- MockHttpSession doesn't publish session binding event for replaced attributes [SPR-17109] #21646
- Override JsonPathAssertions "equals" method to fail always [SPR-17091] #21628
- Improve/unify debug logging at BeanDefinitionReader and BeanFactory level [SPR-17090] #21627
- Minor performance improvements for 5.1 [SPR-17074] #21612
- CookieWebSessionIdResolver doesn't recognise https scheme when used with ForwardedHeaderFilter [SPR-17072] #21610
- Support a custom CorsConfigurationSource [SPR-17067] #21605
- Relax explicit TestContextBootstrapper resolution [SPR-17006] #21544
- Add ExchangeFilterFunction that enforces limit on the response size [SPR-16989] #21527
- Make it easier to tidy up the resources used by a WebClient [SPR-16963] #21501
- Make it possible to disable Scheduled job via cron expression [SPR-16858] #21397
- Check scheme in WebUtils#isSameOrigin [SPR-16362] #20909
- Exception hierarchy under HttpClientException and HttpServerException for the RestTemplate [SPR-15404] #19967
- ResponseEntity factory method inferring FOUND / NOT_FOUND from Optional [SPR-13281] #17871
🪲 Bug Fixes
- LocalVariableTableParameterNameDiscoverer runs into UnsupportedOperationException in ClassVisitor.visitNestMemberExperimental() [SPR-17103] #21640
- Classpath scanning on inner classes fails against JDK 11 bytecode level [SPR-17096] #21633