⭐ New Features
- Fix for ScriptUtils failure when '--' occurs inside a multi-line comment on the same line as '*/' #22392
- InjectionPoint autowiring throws exception for @resource beans autowired by name #22359
- PathMatchingResourcePatternResolver may double-wrap jar: URLs #22346
- mariadb-java-client 2.4.0 productName changed: breaks Spring Batch #22344
- SpringEL should not throw IllegalAccessError for invalid assignment #22336
- Avoid duplicate call to findAnnotations in DefaultListableBeanFactory.findAnnotationOnBean #22318
- Load-time weaving support for WildFly 13+ #22297
- org.springframework.web.client.HttpMessageConverterExtractor#extractData fails to detect empty body when content-length header is missing #22265
- Deprecate JibxMarshaller #22249
- DefaultExceptionHandler logs warning cannot be disabled [SPR-17628] #22159
- Support for null literal in Jackson2JsonDecoder [SPR-17510] #22042
🪲 Bug Fixes
- IllegalArgumentException when overriding empty 'excludeFilters' array on @componentscan #22405
- @transactional beans not getting proxied when being initialized during failed circular reference attempt #22370
- CompositeLog does not log exceptions at ERROR level #22364
- ApplicationContext.refresh() causes stale listeners to be added to ApplicationEventMulticaster #22325
- ApplicationListenerMethodAdapter does not find @ordered annotation for dynamic proxies #22307
- NPE in AbstractHandlerMethodMapping when trace logging is enabled and a handler's class loader does not provide package information #22306
- Incomplete fix for MethodParameter.isOptional() ArrayIndexOutOfBoundsException #22303
- Wrap DecodingException thrown by WebFlux functional endpoints #22290
- Fix truncation of response body in AbstractMessageConverterMethodProcessor #22287
- DataBuffer.write(CharSequence charSequence, Charset charset) fails on empty string with java.lang.IllegalStateException: Current state = RESET, new state = FLUSHED #22262
- Add tests for SpringBeanContainer (Hibernate ORM integration) and fix the behavior when requesting named beans #22260
- ServerSentEventHttpMessageReader leaves a leading space on field decoding [SPR-17511] #22043
📔 Documentation
- Enhance documentation for @PostConstruct/PreDestroy and @required #22348
- Improve spring-context-indexer documentation #22339
- Testing chapter of reference manual refers to old version of PetClinic #22288
- Correct issues in Spring MVC section #22282
- Clarify documentation about Spring MVC views rendered with Jackson versus @JSONVIEW #22280
- Spring MVC documentation has incorrect WebFlux reference #22270
- Use try-with-resources in Spring 5 documentations #22269
- Document effect of @DirtiesContext when used with constructor injection [SPR-17654] #22183
- Add note to Scope documentation on SimpleTransactionScope [SPR-17651] #22180
- Document effect of preemptive timeouts on transactional tests [SPR-17647] #22176
- Document synchronous use of WebClient [SPR-17644] #22173
- Error in CORS WebFilter documentation of web-reactive #19841
- Improve Kotlin documentation #22400
❤️ Contributors
We'd like to thank all the contributors who worked on this release!