spring-projects/spring-framework (org.springframework:spring-aop)
### [`v6.1.13`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.12...v6.1.13)
### [`v6.1.12`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.11...v6.1.12)
### [`v6.1.11`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.11)
#### :star: New Features
- Ensure varargs component type for `MethodHandle` is not `null` in SpEL's `ReflectionHelper` [#33193](https://redirect.github.com/spring-projects/spring-framework/issues/33193)
- Confusing WebClient exception message in case of Reactor-Netty `PrematureCloseException` during response [#33127](https://redirect.github.com/spring-projects/spring-framework/issues/33127)
- Include the bean name in the exception when an invalid factoryBeanObjectType attribute is found [#33117](https://redirect.github.com/spring-projects/spring-framework/issues/33117)
- Use error handler for reactive cache aspect [#33073](https://redirect.github.com/spring-projects/spring-framework/pull/33073)
- `getTypeForFactoryMethod` should catch `NoClassDefFoundError` [#33075](https://redirect.github.com/spring-projects/spring-framework/issues/33075)
#### :lady_beetle: Bug Fixes
- SpEL cannot invoke varargs `MethodHandle` function with an array [#33191](https://redirect.github.com/spring-projects/spring-framework/issues/33191)
- SpEL cannot invoke varargs `MethodHandle` function with zero variable arguments [#33190](https://redirect.github.com/spring-projects/spring-framework/issues/33190)
- Nested bean instance supplier invocation does not retain previous factory method [#33180](https://redirect.github.com/spring-projects/spring-framework/issues/33180)
- DefaultErrorResponseBuilder does not implement headers(Consumer) [#33156](https://redirect.github.com/spring-projects/spring-framework/pull/33156)
- Fix adaptation of violations on Set method parameter [#33150](https://redirect.github.com/spring-projects/spring-framework/pull/33150)
- Web controller call with invalid body resulting in 500 instead of 400 when using kotlinx-serialization [#33138](https://redirect.github.com/spring-projects/spring-framework/issues/33138)
- "file:." cannot be resolved to `java.nio.file.Path` (and plain "." value resolves to classpath root) [#33124](https://redirect.github.com/spring-projects/spring-framework/issues/33124)
- Mockito mock falsely initialized as CGLIB proxy with AspectJ aspect [#33113](https://redirect.github.com/spring-projects/spring-framework/issues/33113)
- Fix ClassCastException from return value validation with proxy when adaptConstraintViolations=true [#33105](https://redirect.github.com/spring-projects/spring-framework/pull/33105)
- Spring coroutines AOP is not compatible with `@Transactional` [#33095](https://redirect.github.com/spring-projects/spring-framework/issues/33095)
- ReactorClientHttpConnector creates new HttpClient for every request [#33093](https://redirect.github.com/spring-projects/spring-framework/issues/33093)
- Trace and Span IDs are no longer propagated RequestBodyAdvice beans [#33091](https://redirect.github.com/spring-projects/spring-framework/issues/33091)
- Early `LocalContainerEntityManagerFactoryBean` initialization fails in case of null bean definition [#33082](https://redirect.github.com/spring-projects/spring-framework/issues/33082)
- `ReactorNettyClientRequest.convertException` should include original exception if cause is `null` [#33080](https://redirect.github.com/spring-projects/spring-framework/issues/33080)
- SpEL incorrectly splits string arguments by comma for `Object...` varargs method [#33013](https://redirect.github.com/spring-projects/spring-framework/issues/33013)
- ProtobufMessageConverter fails to parse JSON payload if byte array is used [#27408](https://redirect.github.com/spring-projects/spring-framework/issues/27408)
#### :notebook_with_decorative_cover: Documentation
- Harmonize phrasing in URI Encoding section [#33166](https://redirect.github.com/spring-projects/spring-framework/pull/33166)
- Document that `ModelMap` is not a supported argument type in WebFlux [#33107](https://redirect.github.com/spring-projects/spring-framework/issues/33107)
- Example in Method Injection section of Spring Framework documentation refers to wrong bean names [#33096](https://redirect.github.com/spring-projects/spring-framework/issues/33096)
- Resource writer doesn't consider subclasses of `InputStreamResource` for content length bypass [#33089](https://redirect.github.com/spring-projects/spring-framework/issues/33089)
- Improve documentation regarding encoding in FreeMarker support [#33071](https://redirect.github.com/spring-projects/spring-framework/issues/33071)
- Exception for validation failure in WebFlux does not match the documentation [#33061](https://redirect.github.com/spring-projects/spring-framework/issues/33061)
#### :hammer: Dependency Upgrades
- Upgrade to Kotlin 1.9.24 [#33177](https://redirect.github.com/spring-projects/spring-framework/issues/33177)
- Upgrade to Kotlin Serialization 1.6.3 [#33175](https://redirect.github.com/spring-projects/spring-framework/issues/33175)
- Upgrade to Micrometer 1.12.8 [#33168](https://redirect.github.com/spring-projects/spring-framework/issues/33168)
- Upgrade to Reactor 2023.0.8 [#33169](https://redirect.github.com/spring-projects/spring-framework/issues/33169)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@TAKETODAY](https://redirect.github.com/TAKETODAY), [@hunhee98](https://redirect.github.com/hunhee98), [@imvtsl](https://redirect.github.com/imvtsl), [@snussbaumer](https://redirect.github.com/snussbaumer), and [@zizare](https://redirect.github.com/zizare)
### [`v6.1.10`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.9...v6.1.10)
### [`v6.1.9`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.9)
#### :star: New Features
- CRaC: ignore checkpointOnRefresh afterRestore [#32978](https://redirect.github.com/spring-projects/spring-framework/issues/32978)
- Add missing hints for Hibernate `@TenantId` [#32967](https://redirect.github.com/spring-projects/spring-framework/issues/32967)
- AnnotationUtils performance degrades with deep stacks [#32921](https://redirect.github.com/spring-projects/spring-framework/issues/32921)
- Missing hints for Hibernate generators [#32842](https://redirect.github.com/spring-projects/spring-framework/issues/32842)
- AbstractAutoProxyCreator#determineBeanType can trigger bean initialization at build time for aspects implementing Ordered [#32230](https://redirect.github.com/spring-projects/spring-framework/issues/32230)
#### :lady_beetle: Bug Fixes
- Behaviour change in ScheduledAnnotationBeanPostProcessor: canceling scheduled tasks on ContextClosedEvent v6.0 -> v6.1 [#33009](https://redirect.github.com/spring-projects/spring-framework/issues/33009)
- ContentCachingRequestWrapper may allocate too much memory [#32987](https://redirect.github.com/spring-projects/spring-framework/issues/32987)
- Support `canEncode()` for `JAXBElement` in `Jaxb2XmlEncoder` [#32977](https://redirect.github.com/spring-projects/spring-framework/pull/32977)
- AspectJ CTW aspects executed twice [#32970](https://redirect.github.com/spring-projects/spring-framework/issues/32970)
- `@Valid` annotations on container elements for handler argument validation not supported [#32964](https://redirect.github.com/spring-projects/spring-framework/issues/32964)
- Add support for double backslashes to `StringUtils#cleanPath` [#32962](https://redirect.github.com/spring-projects/spring-framework/issues/32962)
- `@CacheEvict` condition uses wrapper comparison instead of actual objects [#32960](https://redirect.github.com/spring-projects/spring-framework/issues/32960)
- ConcurrentHashMap.computeIfAbsent used in AdvisedSupport can cause virtual thread pinning [#32958](https://redirect.github.com/spring-projects/spring-framework/issues/32958)
- Exception mapping does not work as expected when plugging in ReactorNettyClientRequestFactory into RestTemplate and RestClient [#32952](https://redirect.github.com/spring-projects/spring-framework/issues/32952)
- `ReactorResourceFactory` not working with CRaC onRefresh checkpoint [#32945](https://redirect.github.com/spring-projects/spring-framework/issues/32945)
- SpEL compilation fails when indexing into an array or list with an `Integer` [#32908](https://redirect.github.com/spring-projects/spring-framework/issues/32908)
- SpEL compilation fails when indexing into a `Map` with a primitive [#32903](https://redirect.github.com/spring-projects/spring-framework/issues/32903)
- BeanUtils.copyProperties no longer copies generic type properties from a base class that has been enhanced [#32888](https://redirect.github.com/spring-projects/spring-framework/issues/32888)
- Application not starting with `@EnableTransactionManagement`(mode = AdviceMode.ASPECTJ) [#32882](https://redirect.github.com/spring-projects/spring-framework/issues/32882)
- ReactorNettyClientResponse should not throw exception if no body is available [#32805](https://redirect.github.com/spring-projects/spring-framework/issues/32805)
- Observation in ServerHttpObservationFilter is never stopped for asynchronous requests [#32730](https://redirect.github.com/spring-projects/spring-framework/issues/32730)
#### :notebook_with_decorative_cover: Documentation
- Fix typo in the Simple Broker section of the reference documentation [#32993](https://redirect.github.com/spring-projects/spring-framework/pull/32993)
- Remove outdated copyright from index.adoc [#32983](https://redirect.github.com/spring-projects/spring-framework/issues/32983)
- Use HttpStatusCode consistently in reference guide [#32966](https://redirect.github.com/spring-projects/spring-framework/pull/32966)
- Entity name in MappingSqlQuery example of reference guide is wrong [#32957](https://redirect.github.com/spring-projects/spring-framework/pull/32957)
- Fix `RegisterReflectionForBinding` Javadoc [#32947](https://redirect.github.com/spring-projects/spring-framework/issues/32947)
- Reference documentation sample for `MethodValidationPostProcessor` is missing a `static` keyword [#32929](https://redirect.github.com/spring-projects/spring-framework/issues/32929)
- Fix typo in Jakarta validation documentation [#32928](https://redirect.github.com/spring-projects/spring-framework/pull/32928)
- Refine `KotlinDetector.isKotlinType` documentation for Kotlin 2.x lambdas [#32905](https://redirect.github.com/spring-projects/spring-framework/issues/32905)
- Complete Kotlin example for HTTP message codecs in reference doc [#32877](https://redirect.github.com/spring-projects/spring-framework/pull/32877)
- Use Threadlocal.remove() instead of .set(null) in documentation [#32874](https://redirect.github.com/spring-projects/spring-framework/pull/32874)
- Unexpected bean override / inject behavior [#32825](https://redirect.github.com/spring-projects/spring-framework/issues/32825)
- Document why complex object structure are not supported as paremeters or properties by AOT [#32273](https://redirect.github.com/spring-projects/spring-framework/issues/32273)
#### :hammer: Dependency Upgrades
- Upgrade to Micrometer 1.12.7 [#33001](https://redirect.github.com/spring-projects/spring-framework/issues/33001)
- Upgrade to Reactor 2023.0.7 [#33007](https://redirect.github.com/spring-projects/spring-framework/issues/33007)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@Attacktive](https://redirect.github.com/Attacktive), [@Seungpang](https://redirect.github.com/Seungpang), [@deblockt](https://redirect.github.com/deblockt), [@hlmg](https://redirect.github.com/hlmg), [@ozooxo](https://redirect.github.com/ozooxo), [@soglad](https://redirect.github.com/soglad), and [@ypyf](https://redirect.github.com/ypyf)
### [`v6.1.8`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.8)
#### :star: New Features
- Avoid creation of SAXParserFactory for every read operation in Jaxb2Marshaller and co [#32851](https://redirect.github.com/spring-projects/spring-framework/issues/32851)
- Suppress deprecation warning for AOT-generated code that refers to a deprecated bean type [#32850](https://redirect.github.com/spring-projects/spring-framework/issues/32850)
#### :lady_beetle: Bug Fixes
- Overridden aspect method runs twice [#32865](https://redirect.github.com/spring-projects/spring-framework/issues/32865)
- `@DateTimeFormat(iso = DateTimeFormat.ISO.DATE\_TIME)` cannot convert UTC without milliseconds to `java.util.Date` [#32856](https://redirect.github.com/spring-projects/spring-framework/issues/32856)
- Spring AOP fails against registered `@Configurable` aspect [#32838](https://redirect.github.com/spring-projects/spring-framework/issues/32838)
- MockHttpServletRequest should not use a shared reader when no content is available [#32820](https://redirect.github.com/spring-projects/spring-framework/issues/32820)
#### :notebook_with_decorative_cover: Documentation
- Modernize Antora Build [#32864](https://redirect.github.com/spring-projects/spring-framework/pull/32864)
- Modernize Antora Build [#32863](https://redirect.github.com/spring-projects/spring-framework/pull/32863)
- Refine CDS documentation [#32843](https://redirect.github.com/spring-projects/spring-framework/issues/32843)
- Revisit validation documentation to better explain when method validation is invoked [#32807](https://redirect.github.com/spring-projects/spring-framework/issues/32807)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@rwinch](https://redirect.github.com/rwinch)
### [`v6.1.7`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.7)
#### :star: New Features
- ResponseEntity is not reliably closed with InputStreamResource [#32802](https://redirect.github.com/spring-projects/spring-framework/issues/32802)
- Accept ajc-compiled `@Aspect` classes for Spring AOP proxy usage [#32793](https://redirect.github.com/spring-projects/spring-framework/issues/32793)
- Failure to process a bean definition ahead-of-time with an instance supplier should provide more contextual information [#32775](https://redirect.github.com/spring-projects/spring-framework/issues/32775)
- Provide methods to unambiguously send form data with MockMvc [#32757](https://redirect.github.com/spring-projects/spring-framework/issues/32757)
- Introduce NoOp implementation for ResponseErrorHandler [#32750](https://redirect.github.com/spring-projects/spring-framework/issues/32750)
- Support varargs invocations in SpEL for varargs array subtype [#32704](https://redirect.github.com/spring-projects/spring-framework/pull/32704)
- StreamUtils.copyRange overreads source stream in some cases [#32695](https://redirect.github.com/spring-projects/spring-framework/issues/32695)
- Modify error message when timeout is less than TIMEOUT_DEFAULT [#32635](https://redirect.github.com/spring-projects/spring-framework/pull/32635)
- Jetty HttpConnections not closed with SSE on Jetty 12.0.7+ when clients close the connection [#32629](https://redirect.github.com/spring-projects/spring-framework/issues/32629)
- Prevent duplicate subscription ID's in destinationCache of DefaultSubscriptionRegistry [#32625](https://redirect.github.com/spring-projects/spring-framework/issues/32625)
- When retrieval of a LoadTimeWeaverAware bean fails the resulting exception message may not indicate why it was being created [#32470](https://redirect.github.com/spring-projects/spring-framework/issues/32470)
#### :lady_beetle: Bug Fixes
- Do not send Cookie header in reactive JdkClientHttpRequest if no cookies added [#32799](https://redirect.github.com/spring-projects/spring-framework/pull/32799)
- Inconsistent use of cleaned URLs in PathMatchingResourcePatternResolver [#32828](https://redirect.github.com/spring-projects/spring-framework/issues/32828)
- DeferredQueryInvocationHandler fails to unwrap QuerySqmImpl class outside of transaction [#32766](https://redirect.github.com/spring-projects/spring-framework/issues/32766)
- BindingReflectionHintsRegistrar#registerReflectionHints can be invoked with a null type [#32753](https://redirect.github.com/spring-projects/spring-framework/issues/32753)
- `AnnotationConfigWebApplicationContext` should propagate `ApplicationStartup` to `BeanFactory` [#32747](https://redirect.github.com/spring-projects/spring-framework/issues/32747)
- Ignore non-String keys in `PropertiesPropertySource.getPropertyNames()` [#32742](https://redirect.github.com/spring-projects/spring-framework/issues/32742)
- `MergedAnnotations` search does not find container for repeatable annotation [#32731](https://redirect.github.com/spring-projects/spring-framework/issues/32731)
- "multiple subscribers not supported" when using WebClient exchange [#32727](https://redirect.github.com/spring-projects/spring-framework/issues/32727)
- ConfigurationClassEnhancer should consistently trigger FastClass creation at build-time [#32682](https://redirect.github.com/spring-projects/spring-framework/issues/32682)
- HttpComponentsClientHttpRequestFactory does not set Content-Length: 0 [#32678](https://redirect.github.com/spring-projects/spring-framework/issues/32678)
- Wrong proxy generation order during AOT for classes with `ScopedProxyMode.TARGET\_CLASS` and advisors [#32669](https://redirect.github.com/spring-projects/spring-framework/issues/32669)
- Unhandled JMS listener exceptions are not propagated [#32666](https://redirect.github.com/spring-projects/spring-framework/issues/32666)
- beanFactory#getBean with arguments ignore them if an Instance supplier is defined [#32657](https://redirect.github.com/spring-projects/spring-framework/issues/32657)
- Incorrect AsyncRequestTimeoutException handling in ResponseEntityExceptionHandler [#32644](https://redirect.github.com/spring-projects/spring-framework/issues/32644)
- Include actual cause's message in various parsing exception messages [#32636](https://redirect.github.com/spring-projects/spring-framework/pull/32636)
- Configuration class with Bean factory method on an interface generates wrong target with AOT [#32609](https://redirect.github.com/spring-projects/spring-framework/issues/32609)
- RestClient observations are stopped before ResponseSpec calls [#32575](https://redirect.github.com/spring-projects/spring-framework/issues/32575)
- MvcUriComponentsBuilder.fromMethodName does not pick the annotated method transparently [#32553](https://redirect.github.com/spring-projects/spring-framework/issues/32553)
- Deadlock/Stall in ConcurrentWebSocketSessionDecorator with Undertow 2.3.10 [#32445](https://redirect.github.com/spring-projects/spring-framework/issues/32445)
- RSocket setup payload can cause Netty ByteBuf leak [#32424](https://redirect.github.com/spring-projects/spring-framework/issues/32424)
- WebFlux temporary file not always deleted with parallel uploads. [#31217](https://redirect.github.com/spring-projects/spring-framework/issues/31217)
#### :notebook_with_decorative_cover: Documentation
- Replace RFC 7807 by RFC 9457 in documentation [#32806](https://redirect.github.com/spring-projects/spring-framework/issues/32806)
- Links to Framework and Servlet Javadoc from Framework's Kotlin API documentation are broken [#32797](https://redirect.github.com/spring-projects/spring-framework/issues/32797)
- Fix incorrect class reference syntax in Kotlin code sample [#32733](https://redirect.github.com/spring-projects/spring-framework/pull/32733)
- Improve documentation advising against use of HandlerInterceptor for security [#32729](https://redirect.github.com/spring-projects/spring-framework/issues/32729)
- Inconsistent behaviour on transactional async method [#32709](https://redirect.github.com/spring-projects/spring-framework/issues/32709)
- Document that getBean with arguments is not recommended with AOT [#32690](https://redirect.github.com/spring-projects/spring-framework/issues/32690)
- Provide an example of custom request URL with RestClient in the reference guide [#32685](https://redirect.github.com/spring-projects/spring-framework/issues/32685)
- Correct documentation on streaming with MockMvcWebTestClient [#32687](https://redirect.github.com/spring-projects/spring-framework/issues/32687)
- Document limitations of CGLIB proxy class generation in JPMS module setups [#32671](https://redirect.github.com/spring-projects/spring-framework/issues/32671)
- Update links to HttpOnly documentation at OWASP in `ResponseCookie` [#32663](https://redirect.github.com/spring-projects/spring-framework/pull/32663)
- Document that RestTemplate may not return a body for certain exceptions [#32641](https://redirect.github.com/spring-projects/spring-framework/issues/32641)
- Document that DataIntegrityViolationException can also be thrown on read-only queries [#32631](https://redirect.github.com/spring-projects/spring-framework/issues/32631)
- Update documentation to explain streaming vs collecting and error handling with `Flux` return values [#32630](https://redirect.github.com/spring-projects/spring-framework/issues/32630)
- Revise "The IoC Container" section to be more relevant for modern Spring applications [#32429](https://redirect.github.com/spring-projects/spring-framework/issues/32429)
- XML bean definition with `factory-method` does not always determine correct target type [#32091](https://redirect.github.com/spring-projects/spring-framework/issues/32091)
- Document `@Order` behavior on types, bean methods, and config classes [#30177](https://redirect.github.com/spring-projects/spring-framework/issues/30177)
- Clarify recommendation on self-injection for legitimate use cases (e.g. `@Transactional` re-entrant calls) [#28299](https://redirect.github.com/spring-projects/spring-framework/issues/28299)
#### :hammer: Dependency Upgrades
- Upgrade to Micrometer 1.12.6 [#32810](https://redirect.github.com/spring-projects/spring-framework/issues/32810)
- Upgrade to Reactor 2023.0.6 [#32786](https://redirect.github.com/spring-projects/spring-framework/issues/32786)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@LeMikaelF](https://redirect.github.com/LeMikaelF), [@Seungpang](https://redirect.github.com/Seungpang), [@izeye](https://redirect.github.com/izeye), [@m4tt30c91](https://redirect.github.com/m4tt30c91), [@remeio](https://redirect.github.com/remeio), and [@yhao3](https://redirect.github.com/yhao3)
### [`v6.1.6`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.6)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.5...v6.1.6)
#### :star: New Features
- Log column type for limited support message in `JdbcUtils.getResultSetValue` [#32601](https://redirect.github.com/spring-projects/spring-framework/issues/32601)
- Consistent support for generic `FactoryBean` type matching when using `getBeanProvider` [#32590](https://redirect.github.com/spring-projects/spring-framework/issues/32590)
- `@RequestParam` binding does not support params with an empty array "\[]" suffix [#32577](https://redirect.github.com/spring-projects/spring-framework/issues/32577)
- Maximum Request Size handling support for Undertow in StandardMultipartHttpServletRequest [#32549](https://redirect.github.com/spring-projects/spring-framework/issues/32549)
- Introduce common support for is-null-safe checks in SpEL nodes [#32516](https://redirect.github.com/spring-projects/spring-framework/issues/32516)
- Avoid additional unnecessary `Annotation` array cloning in `TypeDescriptor` [#32476](https://redirect.github.com/spring-projects/spring-framework/issues/32476)
- Avoid cloning empty `Annotation` array in `TypeDescriptor` [#32405](https://redirect.github.com/spring-projects/spring-framework/pull/32405)
#### :lady_beetle: Bug Fixes
- Refine scheme, userinfo, host and port parsing in UriComponentsBuilder [#32616](https://redirect.github.com/spring-projects/spring-framework/issues/32616)
- "GET must not have a request body" exception with OkhttpClient and BufferingClientHttpRequestFactory [#32612](https://redirect.github.com/spring-projects/spring-framework/issues/32612)
- JMSTemplate.sendAndReceive does not propagate tracer over the wire [#32606](https://redirect.github.com/spring-projects/spring-framework/issues/32606)
- Calling Kotlin suspend functions in non-reactive application crashes due to unresolvable class [#32599](https://redirect.github.com/spring-projects/spring-framework/issues/32599)
- `MethodIntrospector.selectMethods()` fails to detect bridge methods across ApplicationContexts [#32586](https://redirect.github.com/spring-projects/spring-framework/issues/32586)
- Fix handling value class with private constructor on proxy [#32536](https://redirect.github.com/spring-projects/spring-framework/pull/32536)
- ReactorNettyClientResponse should not dispose connection [#32528](https://redirect.github.com/spring-projects/spring-framework/issues/32528)
- `CompoundExpression` omits null-safe syntax in AST string representation of null-safe selection/projection in SpEL [#32515](https://redirect.github.com/spring-projects/spring-framework/issues/32515)
- Generic Kotlin controllers got broken in 6.1.5 [#32510](https://redirect.github.com/spring-projects/spring-framework/issues/32510)
- WebFlux Blocking controller runs on non-blocking thread when request input data present [#32502](https://redirect.github.com/spring-projects/spring-framework/issues/32502)
- Generic interface on `FactoryBean` class not autowired in case of `targetType` mismatch [#32489](https://redirect.github.com/spring-projects/spring-framework/issues/32489)
- `HeaderContentNegotiationStrategy.resolveMediaTypes()` throws unexpected `InvalidMimeTypeException` [#32483](https://redirect.github.com/spring-projects/spring-framework/issues/32483)
- JmsUtils.commitIfNecessary catches and ignores JMS IllegalStateException, losing message with ActiveMQ Artemis [#32473](https://redirect.github.com/spring-projects/spring-framework/issues/32473)
- Missing bean class in native image with a Kotlin nested class [#32472](https://redirect.github.com/spring-projects/spring-framework/issues/32472)
- Spring MVC re-creates form data from request params and re-encoding can change the content-length [#32471](https://redirect.github.com/spring-projects/spring-framework/issues/32471)
- Unhandled JMS exceptions are not always recorded as observation errors [#32458](https://redirect.github.com/spring-projects/spring-framework/issues/32458)
- Consistently apply TaskDecorator to ManagedExecutorService as well [#32455](https://redirect.github.com/spring-projects/spring-framework/issues/32455)
#### :notebook_with_decorative_cover: Documentation
- SimpleAsyncTaskScheduler: Returned ScheduledFuture does not track provided task execution [#32589](https://redirect.github.com/spring-projects/spring-framework/issues/32589)
- Remove link to unrelated method in javadoc of AnnotatedBeanDefinitionReader [#32560](https://redirect.github.com/spring-projects/spring-framework/pull/32560)
- Fix typos and improve wording in reference documentation [#32557](https://redirect.github.com/spring-projects/spring-framework/pull/32557)
- Document that active profiles are set at build time with AOT [#32543](https://redirect.github.com/spring-projects/spring-framework/issues/32543)
- Fix broken link to vavr in the reference guide [#32494](https://redirect.github.com/spring-projects/spring-framework/pull/32494)
- Document AOT limitations related to Kotlin identifiers with backticks [#32487](https://redirect.github.com/spring-projects/spring-framework/issues/32487)
- Add Javadoc since to AbstractClientHttpRequestFactoryWrapper.getDelegate() [#32474](https://redirect.github.com/spring-projects/spring-framework/pull/32474)
- Default strategy for ProblemDetail error codes wrongly document how "detail" is supported [#32446](https://redirect.github.com/spring-projects/spring-framework/pull/32446)
#### :hammer: Dependency Upgrades
- Upgrade to Micrometer 1.12.5 [#32596](https://redirect.github.com/spring-projects/spring-framework/issues/32596)
- Upgrade to Reactor 2023.0.5 [#32592](https://redirect.github.com/spring-projects/spring-framework/issues/32592)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@Banuelorigni](https://redirect.github.com/Banuelorigni), [@LinorDolev](https://redirect.github.com/LinorDolev), [@T45K](https://redirect.github.com/T45K), [@izeye](https://redirect.github.com/izeye), [@kilink](https://redirect.github.com/kilink), [@quaff](https://redirect.github.com/quaff), and [@qww1552](https://redirect.github.com/qww1552)
### [`v6.1.5`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.4...v6.1.5)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.4...v6.1.5)
### [`v6.1.4`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.4)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.3...v6.1.4)
#### :star: New Features
- Add missing RequestPredicate variants in coRouter [#32256](https://redirect.github.com/spring-projects/spring-framework/issues/32256)
- Adapt ConcurrencyThrottleSupport to use ReentrantLock for better virtual thread support [#32251](https://redirect.github.com/spring-projects/spring-framework/issues/32251)
- Create optimized versions of request predicates [#32244](https://redirect.github.com/spring-projects/spring-framework/issues/32244)
- Include function name in `SpelMessage.INCORRECT\_NUMBER\_OF\_ARGUMENTS\_TO\_FUNCTION` [#32239](https://redirect.github.com/spring-projects/spring-framework/issues/32239)
- Add Coroutines support to `NonReactiveHandlerMethodPredicate` [#32227](https://redirect.github.com/spring-projects/spring-framework/issues/32227)
- RouterFunctionMapping does not implement MatchableHandlerMapping [#32221](https://redirect.github.com/spring-projects/spring-framework/issues/32221)
- Initialize (another) Map with correct size in RequestPredicates [#32215](https://redirect.github.com/spring-projects/spring-framework/pull/32215)
- Make SmartLifecycle `phase` value configurable in STOMP message handling components [#32205](https://redirect.github.com/spring-projects/spring-framework/issues/32205)
- Initialize Map with correct size in RequestPredicates [#32201](https://redirect.github.com/spring-projects/spring-framework/pull/32201)
- Let `BeanPropertyRowMapper` subclasses customize mapped names [#32199](https://redirect.github.com/spring-projects/spring-framework/issues/32199)
- Improve client and server handling of STOMP heartbeat failures [#32195](https://redirect.github.com/spring-projects/spring-framework/issues/32195)
- Optimize Map methods in ServletAttributesMap [#32189](https://redirect.github.com/spring-projects/spring-framework/pull/32189)
- Support binary streams with `JdbcClient` [#32161](https://redirect.github.com/spring-projects/spring-framework/issues/32161)
- Annotate core functional SPIs in SpEL with `@FunctionalInterface` [#32135](https://redirect.github.com/spring-projects/spring-framework/issues/32135)
- Cannot use `SimpleJdbcInsert` with catalog name [#32124](https://redirect.github.com/spring-projects/spring-framework/issues/32124)
- Refactor ReloadableResourceBundleMessageSource [#32118](https://redirect.github.com/spring-projects/spring-framework/pull/32118)
- Reuse `MapPropertySource` for `DynamicValuesPropertySource` implementation (as a template for custom variants) [#32110](https://redirect.github.com/spring-projects/spring-framework/issues/32110)
- Improve Spring AOP performance for methods without specific advice [#32104](https://redirect.github.com/spring-projects/spring-framework/issues/32104)
- Make it possible to configure any TaskExecutor through ChannelRegistration [#32081](https://redirect.github.com/spring-projects/spring-framework/issues/32081)
- Add support for JSON streams to Kotlin Serialization [#32074](https://redirect.github.com/spring-projects/spring-framework/pull/32074)
- Avoid reflecting to obtain `validationGroups` every time the call is made [#32068](https://redirect.github.com/spring-projects/spring-framework/issues/32068)
- Reject `@RequestMapping` and `@HttpExchange` declarations on the same element [#32065](https://redirect.github.com/spring-projects/spring-framework/issues/32065)
- Missing toString for ExponentialBackOff [#32061](https://redirect.github.com/spring-projects/spring-framework/issues/32061)
- Reject multiple `@HttpExchange` declarations on the same element [#32049](https://redirect.github.com/spring-projects/spring-framework/issues/32049)
- ClientAbortException from StreamingResponseBody can cause infinite loop of dispatches [#32042](https://redirect.github.com/spring-projects/spring-framework/issues/32042)
- Log warning if multiple `@PostMapping`, `@GetMapping`, etc. annotations are declared [#31962](https://redirect.github.com/spring-projects/spring-framework/issues/31962)
- Using types in `@SessionAttributes` is sometimes not reflected in the model [#30463](https://redirect.github.com/spring-projects/spring-framework/issues/30463)
- Improve read publisher cancel handling to avoid connections in CLOSE_WAIT state with WebSocket on Tomcat [#30393](https://redirect.github.com/spring-projects/spring-framework/issues/30393)
- Provide more control over JPA entities scanning [#27892](https://redirect.github.com/spring-projects/spring-framework/issues/27892)
- Provide and document a way to handle single-page application redirects [#27257](https://redirect.github.com/spring-projects/spring-framework/issues/27257)
- MockMvcClientHttpRequestFactory swallows ServletResponse.errorMessage [#26720](https://redirect.github.com/spring-projects/spring-framework/issues/26720)
#### :lady_beetle: Bug Fixes
- Cannot send Server-Sent Events without data using WebMvc.fn SseBuilder [#32270](https://redirect.github.com/spring-projects/spring-framework/issues/32270)
- Fix `pathExtension` null-safety in Kotlin DSLs [#32254](https://redirect.github.com/spring-projects/spring-framework/issues/32254)
- `SimpleEvaluationContext.Builder` is not `final` and has a `public` constructor [#32253](https://redirect.github.com/spring-projects/spring-framework/issues/32253)
- `@JsonDeserialize(builder = ...)` does not work in GraalVM native image [#32238](https://redirect.github.com/spring-projects/spring-framework/issues/32238)
- RestClientAdapter claims it supports request attributes when it does not [#32232](https://redirect.github.com/spring-projects/spring-framework/pull/32232)
- ThreadPoolTaskExecutor rejecting tasks as soon as the context has been closed can lead to exceptions during web app shutdown [#32226](https://redirect.github.com/spring-projects/spring-framework/issues/32226)
- Consistent parsing of user information in UriComponentsBuilder [#32211](https://redirect.github.com/spring-projects/spring-framework/issues/32211)
- "IllegalStateException: Cannot call sendError() after the response has been committed" when IOException is thrown during resolving method argument values on Tomcat >= 10.1.16 [#32206](https://redirect.github.com/spring-projects/spring-framework/issues/32206)
- No longer able to override the `toString()` in `HandlerMethod` from `6.1.3` [#32184](https://redirect.github.com/spring-projects/spring-framework/issues/32184)
- 6.1.3 regression: aspect not called with multiple inheritance [#32181](https://redirect.github.com/spring-projects/spring-framework/issues/32181)
- Unable to use baseUrl on builders created from RestTemplate [#32180](https://redirect.github.com/spring-projects/spring-framework/issues/32180)
- MessageDeliveryException on shutdown with open WebSocket connections [#32171](https://redirect.github.com/spring-projects/spring-framework/issues/32171)
- With XML configuration, setter selection can be random in case of overloaded setter methods (e.g. on SimpleClientHttpRequestFactory in 6.1.3 from convertForProperty method) [#32159](https://redirect.github.com/spring-projects/spring-framework/issues/32159)
- Cannot process AOT when spring-orm is on the classpath without JPA [#32155](https://redirect.github.com/spring-projects/spring-framework/issues/32155)
- SpEL's `Indexer.setArrayElement()` incorrectly requests conversion to wrapper instead of primitive [#32147](https://redirect.github.com/spring-projects/spring-framework/issues/32147)
- SpEL increment and decrement operators do not generate prefix AST representation [#32144](https://redirect.github.com/spring-projects/spring-framework/issues/32144)
- Validation of `PartEventHttpMessageReader#maxParts` is off by one [#32122](https://redirect.github.com/spring-projects/spring-framework/issues/32122)
- QualifierAnnotationAutowireCandidateResolver.checkQualifier does identity checks when comparing arrays used as qualifier fields [#32106](https://redirect.github.com/spring-projects/spring-framework/issues/32106)
- Guard against multiple body subscriptions in Jetty and JDK reactive responses [#32100](https://redirect.github.com/spring-projects/spring-framework/issues/32100)
- Parameter based cache keys on repository methods can't resolve after 6.1.2->6.1.3 [#32087](https://redirect.github.com/spring-projects/spring-framework/issues/32087)
- Exceptions thrown by custom error handlers are not recorded in RestTemplate observations [#32060](https://redirect.github.com/spring-projects/spring-framework/issues/32060)
- Static resources caching issues with ShallowEtagHeaderFilter and Jetty caching directives [#32039](https://redirect.github.com/spring-projects/spring-framework/issues/32039)
- `RestClient` calls interceptors from `RestTemplate` twice [#32038](https://redirect.github.com/spring-projects/spring-framework/issues/32038)
- `DefaultRestClientBuilder.defaultRequest(...)` doesn't do anything [#32028](https://redirect.github.com/spring-projects/spring-framework/issues/32028)
- Alias resolution error message in `SimpleAliasRegistry` is misleading [#32025](https://redirect.github.com/spring-projects/spring-framework/issues/32025)
- Destroy method not found in Native image for `ExecutorService` Bean type [#32006](https://redirect.github.com/spring-projects/spring-framework/issues/32006)
- `RequestPredicate` fails with WebFlux 6.1.2 [#31955](https://redirect.github.com/spring-projects/spring-framework/issues/31955)
- ChannelSendOperator.WriteBarrier race condition in request(long) method leads to response being dropped [#31865](https://redirect.github.com/spring-projects/spring-framework/issues/31865)
#### :notebook_with_decorative_cover: Documentation
- Fix Kotlin syntax errors in RestClient builder example in rest-clients.adoc [#32265](https://redirect.github.com/spring-projects/spring-framework/pull/32265)
- Use double dot in "META-INF/aop.xml" documentation [#32264](https://redirect.github.com/spring-projects/spring-framework/issues/32264)
- Document that functions are variables in SpEL EvaluationContexts [#32258](https://redirect.github.com/spring-projects/spring-framework/issues/32258)
- Add section on AOT best practices about registering beans programmatically [#32241](https://redirect.github.com/spring-projects/spring-framework/issues/32241)
- Add section on AOT best practices about registering singletons [#32240](https://redirect.github.com/spring-projects/spring-framework/issues/32240)
- Fixes syntax error in JdbcClient examples [#32236](https://redirect.github.com/spring-projects/spring-framework/pull/32236)
- Document `@RequestAttribute` in HTTP clients [#32231](https://redirect.github.com/spring-projects/spring-framework/pull/32231)
- Fix typo in beanvalidation.adoc [#32218](https://redirect.github.com/spring-projects/spring-framework/pull/32218)
- Variables definition fixed [#32216](https://redirect.github.com/spring-projects/spring-framework/pull/32216)
- Document safe navigation support for collection selection/projection in SpEL [#32208](https://redirect.github.com/spring-projects/spring-framework/issues/32208)
- Document usage of SpEL's power operator in the reference manual [#32187](https://redirect.github.com/spring-projects/spring-framework/issues/32187)
- Document support for overloading operators in SpEL [#32182](https://redirect.github.com/spring-projects/spring-framework/issues/32182)
- Update basics.adoc [#32145](https://redirect.github.com/spring-projects/spring-framework/pull/32145)
- Document `between` operator in SpEL [#32140](https://redirect.github.com/spring-projects/spring-framework/issues/32140)
- Update documentation for supported letters in variable names in SpEL [#32138](https://redirect.github.com/spring-projects/spring-framework/issues/32138)
- Document repeat and characer subtraction `String` operators in SpEL [#32137](https://redirect.github.com/spring-projects/spring-framework/issues/32137)
- Document increment and decrement operators in SpEL [#32136](https://redirect.github.com/spring-projects/spring-framework/issues/32136)
- Document cron-vs-quartz parsing convention for dayOfWeek part in CronExpression [#32128](https://redirect.github.com/spring-projects/spring-framework/issues/32128)
- Fix typo [#32111](https://redirect.github.com/spring-projects/spring-framework/pull/32111)
- Graceful shutdown does not cancel `@Scheduled` tasks [#32109](https://redirect.github.com/spring-projects/spring-framework/issues/32109)
- Fixes atlas-extension order [#32083](https://redirect.github.com/spring-projects/spring-framework/pull/32083)
- Spring MVC and WebFlux docs need to say method validation applies if any method parameter has constraint annotations [#32082](https://redirect.github.com/spring-projects/spring-framework/issues/32082)
- Add `@see PathPattern` to function router methods with a pattern parameter [#32045](https://redirect.github.com/spring-projects/spring-framework/issues/32045)
- Rename `class-data-sharing.html` to `cds.html` [#32044](https://redirect.github.com/spring-projects/spring-framework/issues/32044)
- Enable table striping by default in the reference manual [#32022](https://redirect.github.com/spring-projects/spring-framework/issues/32022)
- Document that Conditions can be ordered [#32019](https://redirect.github.com/spring-projects/spring-framework/issues/32019)
- Document how `@JvmName` could mitigate Kotlin `internal` modifier impact [#32010](https://redirect.github.com/spring-projects/spring-framework/pull/32010)
- Update docs on server side use of `@HttpExchange` to make it more clear when it is a good fit [#32008](https://redirect.github.com/spring-projects/spring-framework/pull/32008)
- Document safe navigation semantics within compound expressions in SpEL [#21827](https://redirect.github.com/spring-projects/spring-framework/issues/21827)
- Document limitation of SpEL regarding minimum values for numeric literals [#20779](https://redirect.github.com/spring-projects/spring-framework/issues/20779)
#### :hammer: Dependency Upgrades
- Upgrade to Micrometer 1.12.3 and Context Propagation 1.1.1 [#32277](https://redirect.github.com/spring-projects/spring-framework/issues/32277)
- Upgrade to Reactor 2023.0.3 [#32274](https://redirect.github.com/spring-projects/spring-framework/issues/32274)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@1515biubiubiu](https://redirect.github.com/1515biubiubiu), [@Akaame](https://redirect.github.com/Akaame), [@OlgaMaciaszek](https://redirect.github.com/OlgaMaciaszek), [@andreibastun](https://redirect.github.com/andreibastun), [@cirusthenter](https://redirect.github.com/cirusthenter), [@erichaagdev](https://redirect.github.com/erichaagdev), [@jee14](https://redirect.github.com/jee14), [@jmondo](https://redirect.github.com/jmondo), [@kilink](https://redirect.github.com/kilink), [@kzander91](https://redirect.github.com/kzander91), [@mnhock](https://redirect.github.com/mnhock), [@quaff](https://redirect.github.com/quaff), [@rotilho](https://redirect.github.com/rotilho), [@rwinch](https://redirect.github.com/rwinch), [@senocak](https://redirect.github.com/senocak), [@spencergibb](https://redirect.github.com/spencergibb), and [@wfouche](https://redirect.github.com/wfouche)
### [`v6.1.3`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.3)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.2...v6.1.3)
##### :star: New Features
- Perform checks for bean validation constraints in HandlerMethod only when needed [#32007](https://redirect.github.com/spring-projects/spring-framework/issues/32007)
- Exclude URI query from remaining WebClient checkpoints [#31992](https://redirect.github.com/spring-projects/spring-framework/pull/31992)
- Avoid early getMostSpecificMethod resolution in CommonAnnotationBeanPostProcessor [#31967](https://redirect.github.com/spring-projects/spring-framework/issues/31967)
- Introduce `processInjection()` in `CommonAnnotationBeanPostProcessor` [#31956](https://redirect.github.com/spring-projects/spring-framework/issues/31956)
- Make maximum length of SpEL expressions in an `ApplicationContext` configurable [#31952](https://redirect.github.com/spring-projects/spring-framework/issues/31952)
- `JdkClientHttpRequest` may block indefinitely [#31911](https://redirect.github.com/spring-projects/spring-framework/issues/31911)
- Allow `Propagation.NOT\_SUPPORTED` with `@TransactionalEventListener` [#31907](https://redirect.github.com/spring-projects/spring-framework/issues/31907)
- Review HibernateJpaVendorAdapter to align dialect to use for recent Hibernate versions [#31896](https://redirect.github.com/spring-projects/spring-framework/issues/31896)
- Improve method validation support for containers with constraints on container elements [#31887](https://redirect.github.com/spring-projects/spring-framework/issues/31887)
- Method validation is not triggered when constraints are applied to the elements of a List [#31870](https://redirect.github.com/spring-projects/spring-framework/issues/31870)
- Use standard String comparison in ExtendedBeanInfo.PropertyDescriptorComparator [#31866](https://redirect.github.com/spring-projects/spring-framework/issues/31866)
- Detect Jetty 12 "max length exceeded" message for `MaxUploadSizeExceededException` [#31850](https://redirect.github.com/spring-projects/spring-framework/issues/31850)
- Ensure that Observation is stopped and Scope is closed in doReceiveAndExecute() [#31798](https://redirect.github.com/spring-projects/spring-framework/pull/31798)
- Support the use of `@Resource` in test classes in AOT mode [#31733](https://redirect.github.com/spring-projects/spring-framework/issues/31733)
- Add support for configuring sslContext in StandardWebSocketClient [#30680](https://redirect.github.com/spring-projects/spring-framework/issues/30680)
- Refine allocations for improved memory profile when creating a large amount of proxy instances [#30499](https://redirect.github.com/spring-projects/spring-framework/issues/30499)
- Check ResponseStatusException reason as MessageSource code for ProblemDetail [#30300](https://redirect.github.com/spring-projects/spring-framework/pull/30300)
- `SpringValidatorAdapter` fails in `getRejectedValue` if `ValueExtractor` used in property path to unwrap a container type [#29043](https://redirect.github.com/spring-projects/spring-framework/issues/29043)
- Add CORS support for Private Network Access [#28546](https://redirect.github.com/spring-projects/spring-framework/issues/28546)
- Introduce NoOpTaskScheduler for disabling `@Scheduled` tasks in test setups [#28073](https://redirect.github.com/spring-projects/spring-framework/issues/28073)
- MvcUriComponentsBuilder should resolve property placeholders in request mapping paths [#26795](https://redirect.github.com/spring-projects/spring-framework/issues/26795)
- Allow SockJsUrlInfo to be overridden in SockJsClient [#25888](https://redirect.github.com/spring-projects/spring-framework/issues/25888)
- Extending abstract class does not expose parameter annotations [#25788](https://redirect.github.com/spring-projects/spring-framework/issues/25788)
- DatabasePopulatorConfigUtils should only set a populator if matching scripts are defined [#23405](https://redirect.github.com/spring-projects/spring-framework/issues/23405)
- `@annotation` pointcut is not matched with complex hierarchy and generics against classes compiled by Eclipse \[SPR-17310] [#21843](https://redirect.github.com/spring-projects/spring-framework/issues/21843)
- Allow registration of application event listeners in a functional way \[SPR-16872] [#21411](https://redirect.github.com/spring-projects/spring-framework/issues/21411)
- Allow CronTrigger to resume from specified timestamp \[SPR-14909] [#19475](https://redirect.github.com/spring-projects/spring-framework/issues/19475)
##### :lady_beetle: Bug Fixes
- Using a URI variable for port in `WebClient` causes an `IllegalStateException` [#32003](https://redirect.github.com/spring-projects/spring-framework/issues/32003)
- \[spring-tx] Unable to override prepareSynchronization of AbstractPlatformTransactionManager from v6.1.0 [#32000](https://redirect.github.com/spring-projects/spring-framework/issues/32000)
- `RestClientResponseException` handles `responseHeaders` case-sensitive [#31978](https://redirect.github.com/spring-projects/spring-framework/issues/31978)
- CronTrigger hard-codes default ZoneId instead of participating in scheduler-wide Clock setup [#31948](https://redirect.github.com/spring-projects/spring-framework/issues/31948)
- HandlerMappingIntrospector is throwing PatternSyntaxException for wildcards in the request URL [#31937](https://redirect.github.com/spring-projects/spring-framework/issues/31937)
- java.lang.NullPointerException with Scheduled tasks through DefaultScheduledTaskObservationConvention [#31918](https://redirect.github.com/spring-projects/spring-framework/issues/31918)
- HibernateJpaVendorAdapter refers to org.hibernate.dialect.Oracle12cDialect that does not exist in recent Hibernate versions [#31892](https://redirect.github.com/spring-projects/spring-framework/issues/31892)
- ClassNotFoundException: org.hibernate.dialect.MySQL57Dialect with Hibernate 6.4 [#31889](https://redirect.github.com/spring-projects/spring-framework/issues/31889)
- Inconsistent inclusion of base URL in `WebClient` URI template attribute since Spring WebFlux 6.1.2 [#31882](https://redirect.github.com/spring-projects/spring-framework/issues/31882)
- `@Async` does not support `Unit?` return type [#31881](https://redirect.github.com/spring-projects/spring-framework/issues/31881)
- Web handlers don't support Kotlin extensions [#31876](https://redirect.github.com/spring-projects/spring-framework/issues/31876)
- DefaultDataBuffer fails to transform its content to a string [#31873](https://redirect.github.com/spring-projects/spring-framework/issues/31873)
- With XML configuration, setter selection can be random in case of overloaded setter methods (e.g. on SimpleClientHttpRequestFactory in 6.1) [#31872](https://redirect.github.com/spring-projects/spring-framework/issues/31872)
- Complete frame callback when opcode is not PONG [#31869](https://redirect.github.com/spring-projects/spring-framework/pull/31869)
- `@Cacheable` does not respect cache hit when empty Mono/Flux response is returned [#31868](https://redirect.github.com/spring-projects/spring-framework/issues/31868)
- Unable to use sync cache with reactivestreams [#31861](https://redirect.github.com/spring-projects/spring-framework/issues/31861)
- Spring Websocket - JettyWebsocketHandlerAdapter copyByteBuffer fills Buffer with zeros [#31857](https://redirect.github.com/spring-projects/spring-framework/issues/31857)
- `NullPointerException` with `@RequestMapping` on Kotlin property accessors [#31856](https://redirect.github.com/spring-projects/spring-framework/issues/31856)
- Non-deterministic native image JSON hints invalidate Gradle build cache [#31852](https://redirect.github.com/spring-projects/spring-framework/issues/31852)
- DefaultServerRequestObservationConvention is silently used when multiple convention beans are defined [#31864](https://redirect.github.com/spring-projects/spring-framework/issues/31864)
- Significant increase in memory consumption `StringDecoder` when splitting input by delimiters. [#31848](https://redirect.github.com/spring-projects/spring-framework/issues/31848)
- Convert args to Kotlin value class in CoroutinesUtils [#31846](https://redirect.github.com/spring-projects/spring-framework/pull/31846)
- ForwardedHeaderFilter should reject invalid requests [#31842](https://redirect.github.com/spring-projects/spring-framework/issues/31842)
- NotReadablePropertyException due to mismatch between `ConstraintViolation` property path and `BindingResult` target in `MethodValidationAdapter` [#31746](https://redirect.github.com/spring-projects/spring-framework/issues/31746)
- Built-in method validation validates `@RequestBody` parameter twice [#31711](https://redirect.github.com/spring-projects/spring-framework/issues/31711)
- Double error response handling on suspended methods [#31541](https://redirect.github.com/spring-projects/spring-framework/issues/31541)
- Spring AOP does not propagate arguments for dynamic prototype-scoped advice [#28407](https://redirect.github.com/spring-projects/spring-framework/issues/28407)
- Only log status in ServletRequestHandledEvent [#27595](https://redirect.github.com/spring-projects/spring-framework/issues/27595)
- MergedAnnotation swallows IllegalAccessException for attribute method [#27182](https://redirect.github.com/spring-projects/spring-framework/issues/27182)
- AOP pointcut erroneously matching `ProceedingJoinPoint.proceed` when called from within another advised bean [#26068](https://redirect.github.com/spring-projects/spring-framework/issues/26068)
##### :notebook_with_decorative_cover: Documentation
- Document exception handling for HTTP Interface client with `RestClient` and `RestTemplate` [#31991](https://redirect.github.com/spring-projects/spring-framework/pull/31991)
- Update `Conten
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
5.3.33
->6.1.13
5.3.33
->6.1.13
Release Notes
spring-projects/spring-framework (org.springframework:spring-aop)
### [`v6.1.13`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.12...v6.1.13) ### [`v6.1.12`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.11...v6.1.12) ### [`v6.1.11`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.11) #### :star: New Features - Ensure varargs component type for `MethodHandle` is not `null` in SpEL's `ReflectionHelper` [#33193](https://redirect.github.com/spring-projects/spring-framework/issues/33193) - Confusing WebClient exception message in case of Reactor-Netty `PrematureCloseException` during response [#33127](https://redirect.github.com/spring-projects/spring-framework/issues/33127) - Include the bean name in the exception when an invalid factoryBeanObjectType attribute is found [#33117](https://redirect.github.com/spring-projects/spring-framework/issues/33117) - Use error handler for reactive cache aspect [#33073](https://redirect.github.com/spring-projects/spring-framework/pull/33073) - `getTypeForFactoryMethod` should catch `NoClassDefFoundError` [#33075](https://redirect.github.com/spring-projects/spring-framework/issues/33075) #### :lady_beetle: Bug Fixes - SpEL cannot invoke varargs `MethodHandle` function with an array [#33191](https://redirect.github.com/spring-projects/spring-framework/issues/33191) - SpEL cannot invoke varargs `MethodHandle` function with zero variable arguments [#33190](https://redirect.github.com/spring-projects/spring-framework/issues/33190) - Nested bean instance supplier invocation does not retain previous factory method [#33180](https://redirect.github.com/spring-projects/spring-framework/issues/33180) - DefaultErrorResponseBuilder does not implement headers(Consumer) [#33156](https://redirect.github.com/spring-projects/spring-framework/pull/33156) - Fix adaptation of violations on Set method parameter [#33150](https://redirect.github.com/spring-projects/spring-framework/pull/33150) - Web controller call with invalid body resulting in 500 instead of 400 when using kotlinx-serialization [#33138](https://redirect.github.com/spring-projects/spring-framework/issues/33138) - "file:." cannot be resolved to `java.nio.file.Path` (and plain "." value resolves to classpath root) [#33124](https://redirect.github.com/spring-projects/spring-framework/issues/33124) - Mockito mock falsely initialized as CGLIB proxy with AspectJ aspect [#33113](https://redirect.github.com/spring-projects/spring-framework/issues/33113) - Fix ClassCastException from return value validation with proxy when adaptConstraintViolations=true [#33105](https://redirect.github.com/spring-projects/spring-framework/pull/33105) - Spring coroutines AOP is not compatible with `@Transactional` [#33095](https://redirect.github.com/spring-projects/spring-framework/issues/33095) - ReactorClientHttpConnector creates new HttpClient for every request [#33093](https://redirect.github.com/spring-projects/spring-framework/issues/33093) - Trace and Span IDs are no longer propagated RequestBodyAdvice beans [#33091](https://redirect.github.com/spring-projects/spring-framework/issues/33091) - Early `LocalContainerEntityManagerFactoryBean` initialization fails in case of null bean definition [#33082](https://redirect.github.com/spring-projects/spring-framework/issues/33082) - `ReactorNettyClientRequest.convertException` should include original exception if cause is `null` [#33080](https://redirect.github.com/spring-projects/spring-framework/issues/33080) - SpEL incorrectly splits string arguments by comma for `Object...` varargs method [#33013](https://redirect.github.com/spring-projects/spring-framework/issues/33013) - ProtobufMessageConverter fails to parse JSON payload if byte array is used [#27408](https://redirect.github.com/spring-projects/spring-framework/issues/27408) #### :notebook_with_decorative_cover: Documentation - Harmonize phrasing in URI Encoding section [#33166](https://redirect.github.com/spring-projects/spring-framework/pull/33166) - Document that `ModelMap` is not a supported argument type in WebFlux [#33107](https://redirect.github.com/spring-projects/spring-framework/issues/33107) - Example in Method Injection section of Spring Framework documentation refers to wrong bean names [#33096](https://redirect.github.com/spring-projects/spring-framework/issues/33096) - Resource writer doesn't consider subclasses of `InputStreamResource` for content length bypass [#33089](https://redirect.github.com/spring-projects/spring-framework/issues/33089) - Improve documentation regarding encoding in FreeMarker support [#33071](https://redirect.github.com/spring-projects/spring-framework/issues/33071) - Exception for validation failure in WebFlux does not match the documentation [#33061](https://redirect.github.com/spring-projects/spring-framework/issues/33061) #### :hammer: Dependency Upgrades - Upgrade to Kotlin 1.9.24 [#33177](https://redirect.github.com/spring-projects/spring-framework/issues/33177) - Upgrade to Kotlin Serialization 1.6.3 [#33175](https://redirect.github.com/spring-projects/spring-framework/issues/33175) - Upgrade to Micrometer 1.12.8 [#33168](https://redirect.github.com/spring-projects/spring-framework/issues/33168) - Upgrade to Reactor 2023.0.8 [#33169](https://redirect.github.com/spring-projects/spring-framework/issues/33169) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@TAKETODAY](https://redirect.github.com/TAKETODAY), [@hunhee98](https://redirect.github.com/hunhee98), [@imvtsl](https://redirect.github.com/imvtsl), [@snussbaumer](https://redirect.github.com/snussbaumer), and [@zizare](https://redirect.github.com/zizare) ### [`v6.1.10`](https://redirect.github.com/spring-projects/spring-framework/compare/v6.1.9...v6.1.10) ### [`v6.1.9`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.9) #### :star: New Features - CRaC: ignore checkpointOnRefresh afterRestore [#32978](https://redirect.github.com/spring-projects/spring-framework/issues/32978) - Add missing hints for Hibernate `@TenantId` [#32967](https://redirect.github.com/spring-projects/spring-framework/issues/32967) - AnnotationUtils performance degrades with deep stacks [#32921](https://redirect.github.com/spring-projects/spring-framework/issues/32921) - Missing hints for Hibernate generators [#32842](https://redirect.github.com/spring-projects/spring-framework/issues/32842) - AbstractAutoProxyCreator#determineBeanType can trigger bean initialization at build time for aspects implementing Ordered [#32230](https://redirect.github.com/spring-projects/spring-framework/issues/32230) #### :lady_beetle: Bug Fixes - Behaviour change in ScheduledAnnotationBeanPostProcessor: canceling scheduled tasks on ContextClosedEvent v6.0 -> v6.1 [#33009](https://redirect.github.com/spring-projects/spring-framework/issues/33009) - ContentCachingRequestWrapper may allocate too much memory [#32987](https://redirect.github.com/spring-projects/spring-framework/issues/32987) - Support `canEncode()` for `JAXBElement` in `Jaxb2XmlEncoder` [#32977](https://redirect.github.com/spring-projects/spring-framework/pull/32977) - AspectJ CTW aspects executed twice [#32970](https://redirect.github.com/spring-projects/spring-framework/issues/32970) - `@Valid` annotations on container elements for handler argument validation not supported [#32964](https://redirect.github.com/spring-projects/spring-framework/issues/32964) - Add support for double backslashes to `StringUtils#cleanPath` [#32962](https://redirect.github.com/spring-projects/spring-framework/issues/32962) - `@CacheEvict` condition uses wrapper comparison instead of actual objects [#32960](https://redirect.github.com/spring-projects/spring-framework/issues/32960) - ConcurrentHashMap.computeIfAbsent used in AdvisedSupport can cause virtual thread pinning [#32958](https://redirect.github.com/spring-projects/spring-framework/issues/32958) - Exception mapping does not work as expected when plugging in ReactorNettyClientRequestFactory into RestTemplate and RestClient [#32952](https://redirect.github.com/spring-projects/spring-framework/issues/32952) - `ReactorResourceFactory` not working with CRaC onRefresh checkpoint [#32945](https://redirect.github.com/spring-projects/spring-framework/issues/32945) - SpEL compilation fails when indexing into an array or list with an `Integer` [#32908](https://redirect.github.com/spring-projects/spring-framework/issues/32908) - SpEL compilation fails when indexing into a `Map` with a primitive [#32903](https://redirect.github.com/spring-projects/spring-framework/issues/32903) - BeanUtils.copyProperties no longer copies generic type properties from a base class that has been enhanced [#32888](https://redirect.github.com/spring-projects/spring-framework/issues/32888) - Application not starting with `@EnableTransactionManagement`(mode = AdviceMode.ASPECTJ) [#32882](https://redirect.github.com/spring-projects/spring-framework/issues/32882) - ReactorNettyClientResponse should not throw exception if no body is available [#32805](https://redirect.github.com/spring-projects/spring-framework/issues/32805) - Observation in ServerHttpObservationFilter is never stopped for asynchronous requests [#32730](https://redirect.github.com/spring-projects/spring-framework/issues/32730) #### :notebook_with_decorative_cover: Documentation - Fix typo in the Simple Broker section of the reference documentation [#32993](https://redirect.github.com/spring-projects/spring-framework/pull/32993) - Remove outdated copyright from index.adoc [#32983](https://redirect.github.com/spring-projects/spring-framework/issues/32983) - Use HttpStatusCode consistently in reference guide [#32966](https://redirect.github.com/spring-projects/spring-framework/pull/32966) - Entity name in MappingSqlQuery example of reference guide is wrong [#32957](https://redirect.github.com/spring-projects/spring-framework/pull/32957) - Fix `RegisterReflectionForBinding` Javadoc [#32947](https://redirect.github.com/spring-projects/spring-framework/issues/32947) - Reference documentation sample for `MethodValidationPostProcessor` is missing a `static` keyword [#32929](https://redirect.github.com/spring-projects/spring-framework/issues/32929) - Fix typo in Jakarta validation documentation [#32928](https://redirect.github.com/spring-projects/spring-framework/pull/32928) - Refine `KotlinDetector.isKotlinType` documentation for Kotlin 2.x lambdas [#32905](https://redirect.github.com/spring-projects/spring-framework/issues/32905) - Complete Kotlin example for HTTP message codecs in reference doc [#32877](https://redirect.github.com/spring-projects/spring-framework/pull/32877) - Use Threadlocal.remove() instead of .set(null) in documentation [#32874](https://redirect.github.com/spring-projects/spring-framework/pull/32874) - Unexpected bean override / inject behavior [#32825](https://redirect.github.com/spring-projects/spring-framework/issues/32825) - Document why complex object structure are not supported as paremeters or properties by AOT [#32273](https://redirect.github.com/spring-projects/spring-framework/issues/32273) #### :hammer: Dependency Upgrades - Upgrade to Micrometer 1.12.7 [#33001](https://redirect.github.com/spring-projects/spring-framework/issues/33001) - Upgrade to Reactor 2023.0.7 [#33007](https://redirect.github.com/spring-projects/spring-framework/issues/33007) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@Attacktive](https://redirect.github.com/Attacktive), [@Seungpang](https://redirect.github.com/Seungpang), [@deblockt](https://redirect.github.com/deblockt), [@hlmg](https://redirect.github.com/hlmg), [@ozooxo](https://redirect.github.com/ozooxo), [@soglad](https://redirect.github.com/soglad), and [@ypyf](https://redirect.github.com/ypyf) ### [`v6.1.8`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.8) #### :star: New Features - Avoid creation of SAXParserFactory for every read operation in Jaxb2Marshaller and co [#32851](https://redirect.github.com/spring-projects/spring-framework/issues/32851) - Suppress deprecation warning for AOT-generated code that refers to a deprecated bean type [#32850](https://redirect.github.com/spring-projects/spring-framework/issues/32850) #### :lady_beetle: Bug Fixes - Overridden aspect method runs twice [#32865](https://redirect.github.com/spring-projects/spring-framework/issues/32865) - `@DateTimeFormat(iso = DateTimeFormat.ISO.DATE\_TIME)` cannot convert UTC without milliseconds to `java.util.Date` [#32856](https://redirect.github.com/spring-projects/spring-framework/issues/32856) - Spring AOP fails against registered `@Configurable` aspect [#32838](https://redirect.github.com/spring-projects/spring-framework/issues/32838) - MockHttpServletRequest should not use a shared reader when no content is available [#32820](https://redirect.github.com/spring-projects/spring-framework/issues/32820) #### :notebook_with_decorative_cover: Documentation - Modernize Antora Build [#32864](https://redirect.github.com/spring-projects/spring-framework/pull/32864) - Modernize Antora Build [#32863](https://redirect.github.com/spring-projects/spring-framework/pull/32863) - Refine CDS documentation [#32843](https://redirect.github.com/spring-projects/spring-framework/issues/32843) - Revisit validation documentation to better explain when method validation is invoked [#32807](https://redirect.github.com/spring-projects/spring-framework/issues/32807) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@rwinch](https://redirect.github.com/rwinch) ### [`v6.1.7`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v6.1.7) #### :star: New Features - ResponseEntityConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.