spring-projects/spring-framework (org.springframework:spring-web)
### [`v5.2.18.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.18.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.17.RELEASE...v5.2.18.RELEASE)
#### :star: New Features
- Enhance DefaultResponseErrorHandler to allow logging complete error response body [#27558](https://redirect.github.com/spring-projects/spring-framework/issues/27558)
- DefaultMessageListenerContainer does not log an error/warning when consumer tasks have been rejected [#27457](https://redirect.github.com/spring-projects/spring-framework/issues/27457)
#### :lady_beetle: Bug Fixes
- Performance impact of con.getContentLengthLong() in AbstractFileResolvingResource.isReadable() downloading huge jars to check component length [#27549](https://redirect.github.com/spring-projects/spring-framework/issues/27549)
- Performance impact of ResourceUrlEncodingFilter on HttpServletResponse#encodeURL [#27548](https://redirect.github.com/spring-projects/spring-framework/issues/27548)
- Avoid duplicate JCacheOperationSource bean registration in \ [#27547](https://redirect.github.com/spring-projects/spring-framework/issues/27547)
- Non-escaped closing curly brace in RegEx results in initialization error on Android [#27502](https://redirect.github.com/spring-projects/spring-framework/issues/27502)
- Proxy generation with Java 17 fails with "Cannot invoke "Object.getClass()" because "cause" is null" [#27498](https://redirect.github.com/spring-projects/spring-framework/issues/27498)
- ConcurrentReferenceHashMap's entrySet violates the Map contract [#27455](https://redirect.github.com/spring-projects/spring-framework/issues/27455)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR24 [#27526](https://redirect.github.com/spring-projects/spring-framework/issues/27526)
### [`v5.2.17.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.17.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.16.RELEASE...v5.2.17.RELEASE)
#### :star: New Features
- Invalid JavaBean property 'logoutHandlers' being accessed (warning in the logs for Spring Security's ConcurrentSessionFilter) [#27396](https://redirect.github.com/spring-projects/spring-framework/issues/27396)
- Convenient configuration of type permissions for XStream 1.4.18 [#27344](https://redirect.github.com/spring-projects/spring-framework/issues/27344)
- ResponseStatusException.initCause always throws IllegalStateException [#27212](https://redirect.github.com/spring-projects/spring-framework/issues/27212)
#### :lady_beetle: Bug Fixes
- Support char, float, and double primitive default values in BeanUtils.instantiateClass() [#27401](https://redirect.github.com/spring-projects/spring-framework/issues/27401)
- CommonsMultipartResolver and DEBUG logging lead to empty fileMap in MultipartHttpServletRequest [#27398](https://redirect.github.com/spring-projects/spring-framework/issues/27398)
- Fix UrlPathHelper#shouldRemoveSemicolonContent() [#27310](https://redirect.github.com/spring-projects/spring-framework/issues/27310)
- CompositeUriComponentsContributor#hasContributors: method name is not compliant with its intention [#27275](https://redirect.github.com/spring-projects/spring-framework/issues/27275)
- WebSocketMessageBrokerStats.getExecutorStatsInfo() throws exception if Executor is not a ThreadPoolExecutor [#27213](https://redirect.github.com/spring-projects/spring-framework/issues/27213)
#### :notebook_with_decorative_cover: Documentation
- Fix Kotlin example for filtering handler functions [#27352](https://redirect.github.com/spring-projects/spring-framework/issues/27352)
- Document when `prepareTestInstance()` is invoked when using the `SpringMethodRule` [#27312](https://redirect.github.com/spring-projects/spring-framework/issues/27312)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR23 [#27378](https://redirect.github.com/spring-projects/spring-framework/issues/27378)
### [`v5.2.16.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.16.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.15.RELEASE...v5.2.16.RELEASE)
#### :star: New Features
- BeanCreationException error message should always include declaring class of constructor (or factory method) [#27140](https://redirect.github.com/spring-projects/spring-framework/issues/27140)
- SynchronossPartHttpMessageReader should only create temp directory when needed [#27094](https://redirect.github.com/spring-projects/spring-framework/issues/27094)
- Deprecate internal APIs in ScriptUtils implementations [#26948](https://redirect.github.com/spring-projects/spring-framework/issues/26948)
#### :beetle: Bug Fixes
- AOP auto-proxying with proxyTargetClass=true and introduction advice does not work for JDK proxy targets [#27148](https://redirect.github.com/spring-projects/spring-framework/issues/27148)
- SimpleMethodMetadataReadingVisitor.Source.toString() omits separator for method arguments [#27096](https://redirect.github.com/spring-projects/spring-framework/issues/27096)
- DefaultPathSegment allows shared empty parameters map to be mutated [#27065](https://redirect.github.com/spring-projects/spring-framework/issues/27065)
- Ignore comments when searching for SQL statement delimiter in ScriptUtils [#26942](https://redirect.github.com/spring-projects/spring-framework/issues/26942)
- Ignore delimiter enclosed in double quotes in ScriptUtils [#26936](https://redirect.github.com/spring-projects/spring-framework/issues/26936)
#### :notebook_with_decorative_cover: Documentation
- Fix `@Transactional` examples regarding method visibility [#27005](https://redirect.github.com/spring-projects/spring-framework/issues/27005)
- Improve `@Transactional` docs regarding method visibility [#27004](https://redirect.github.com/spring-projects/spring-framework/issues/27004)
- Document transactional semantics for `@TransactionalEventListener` after completion methods [#26979](https://redirect.github.com/spring-projects/spring-framework/issues/26979)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR21 [#27163](https://redirect.github.com/spring-projects/spring-framework/issues/27163)
### [`v5.2.15.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.15.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.14.RELEASE...v5.2.15.RELEASE)
#### :star: New Features
- Ensure multipart temp directories do not collide [#26932](https://redirect.github.com/spring-projects/spring-framework/issues/26932)
- InvalidPathException in log when running SpringBootTest with NIO Path property on Windows [#26894](https://redirect.github.com/spring-projects/spring-framework/issues/26894)
- Spring AOP should not apply UndeclaredThrowableException to checked exceptions from Kotlin methods [#26839](https://redirect.github.com/spring-projects/spring-framework/issues/26839)
#### :beetle: Bug Fixes
- Fix web parameters resolution when injected via constructor [#26923](https://redirect.github.com/spring-projects/spring-framework/issues/26923)
- Fix Kotlin filter parameter bug in Router DSLs [#26921](https://redirect.github.com/spring-projects/spring-framework/issues/26921)
- Incorrect check in AbstractBrokerRegistration's constructor [#26898](https://redirect.github.com/spring-projects/spring-framework/issues/26898)
- `@ModelAttribute(binding=false)` is not honored with WebFlux [#26888](https://redirect.github.com/spring-projects/spring-framework/issues/26888)
#### :notebook_with_decorative_cover: Documentation
- Remove leftover Javadoc from WebClient [#26809](https://redirect.github.com/spring-projects/spring-framework/issues/26809)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR20 [#26891](https://redirect.github.com/spring-projects/spring-framework/issues/26891)
### [`v5.2.14.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.14.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.13.RELEASE...v5.2.14.RELEASE)
#### :star: New Features
- Add missing nullable annotation to ResponseEntity ok convenience method [#26614](https://redirect.github.com/spring-projects/spring-framework/issues/26614)
- Support cookies with Expires attribute but no Max-Age attribute in MockHttpServletResponse [#26559](https://redirect.github.com/spring-projects/spring-framework/issues/26559)
#### :beetle: Bug Fixes
- `@DirtiesContext` not applied when class-level `@EnabledIf` evaluates to false [#26697](https://redirect.github.com/spring-projects/spring-framework/issues/26697)
- StatusAssertion value methods fail when used with custom status code [#26666](https://redirect.github.com/spring-projects/spring-framework/issues/26666)
- Local `@CrossOrigin` maxAge value should override global value [#26620](https://redirect.github.com/spring-projects/spring-framework/issues/26620)
- Correctly set auto-growing array's element [#26606](https://redirect.github.com/spring-projects/spring-framework/issues/26606)
- Fix handling of "file:" paths to non-existent files on Windows [#26589](https://redirect.github.com/spring-projects/spring-framework/issues/26589)
- ClassLoader.getResource can throw IllegalArgumentException [#26588](https://redirect.github.com/spring-projects/spring-framework/issues/26588)
- LoadTimeWeaver no longer weaves bean classes annotated with `@Component` [#26584](https://redirect.github.com/spring-projects/spring-framework/issues/26584)
- ResourceUrlProvider detects wrong set of handler mappings [#26562](https://redirect.github.com/spring-projects/spring-framework/issues/26562)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR19 [#26768](https://redirect.github.com/spring-projects/spring-framework/issues/26768)
### [`v5.2.13.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.13.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.12.RELEASE...v5.2.13.RELEASE)
#### :star: New Features
- Inefficient reflection operations for destroy method determination [#26499](https://redirect.github.com/spring-projects/spring-framework/issues/26499)
- No way to affect response when unhandled exceptions thrown from ForwardedHeaderTransformer [#26465](https://redirect.github.com/spring-projects/spring-framework/issues/26465)
- Fail early FactoryBean instantiation for LinkageError [#26426](https://redirect.github.com/spring-projects/spring-framework/issues/26426)
- Close mapping streams after the ValidatorFactory has been built in LocalValidatorFactoryBean [#26424](https://redirect.github.com/spring-projects/spring-framework/issues/26424)
- Defensively handle loadClass null result in BeanUtils.findEditorByConvention (against misbehaving ClassLoader impl such as in the GWT JettyLauncher) [#26256](https://redirect.github.com/spring-projects/spring-framework/issues/26256)
#### :beetle: Bug Fixes
- Avoid unnecessary wrapping for SqlParameterValue [#26547](https://redirect.github.com/spring-projects/spring-framework/issues/26547)
- Autowiring shortcut fails with NoSuchBeanDefinitionException after removeBeanDefinition call [#26518](https://redirect.github.com/spring-projects/spring-framework/issues/26518)
- SimpleJdbcInsert (sporadically) does not insert all columns [#26503](https://redirect.github.com/spring-projects/spring-framework/issues/26503)
- DefaultHandlerExceptionResolver handling of media type exception on Tomcat 7+ [#26475](https://redirect.github.com/spring-projects/spring-framework/issues/26475)
- Websocket extensions not working [#26452](https://redirect.github.com/spring-projects/spring-framework/issues/26452)
- AbstractBeanDefinition#equals handles propertyValues incorrectly [#26435](https://redirect.github.com/spring-projects/spring-framework/issues/26435)
- Remove obsolete commandName attribute in spring-form.tld [#26338](https://redirect.github.com/spring-projects/spring-framework/issues/26338)
- NettyHeadersAdapter.add() accepts `@Nullable` value but throws NullPointerException [#26277](https://redirect.github.com/spring-projects/spring-framework/issues/26277)
#### :notebook_with_decorative_cover: Documentation
- Document the "SpringProperties mechanism" mentioned in the testing chapter [#26494](https://redirect.github.com/spring-projects/spring-framework/issues/26494)
- UriComponentsBuilder documentation error for HTTP request encoding [#26455](https://redirect.github.com/spring-projects/spring-framework/issues/26455)
- Wrong documentation for CachePut [#26404](https://redirect.github.com/spring-projects/spring-framework/issues/26404)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR17 [#26549](https://redirect.github.com/spring-projects/spring-framework/issues/26549)
### [`v5.2.12.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.12.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.11.RELEASE...v5.2.12.RELEASE)
#### :star: New Features
- ContentCachingResponseWrapper should not add “Content-Length” when “Transfer-Encoding” is present [#26191](https://redirect.github.com/spring-projects/spring-framework/issues/26191)
- Register bean definition dependencies when used via configuration class injected fields [#26168](https://redirect.github.com/spring-projects/spring-framework/issues/26168)
- Wildcard is a valid Access-Control-Expose-Headers value [#26115](https://redirect.github.com/spring-projects/spring-framework/issues/26115)
- EntityManagerFactory startup failure in deferred mode is only available on first use [#26094](https://redirect.github.com/spring-projects/spring-framework/issues/26094)
#### :beetle: Bug Fixes
- AbstractJackson2HttpMessageConverter writes partial data when exception occurs during write [#26246](https://redirect.github.com/spring-projects/spring-framework/issues/26246)
- Remove duplicate "property" in PropertyCacheKey.toString() [#26242](https://redirect.github.com/spring-projects/spring-framework/issues/26242)
- DataBuffer Leak in Server Response [#26234](https://redirect.github.com/spring-projects/spring-framework/issues/26234)
- GenericConversionService$Converters.getMatchableConverters throws ConcurrentModificationException on Java 9+ [#26184](https://redirect.github.com/spring-projects/spring-framework/issues/26184)
- ConcurrentModificationException in NativeMessageHeaderAccessor#copyHeaders [#26158](https://redirect.github.com/spring-projects/spring-framework/issues/26158)
- MimeType is no longer actually serializable [#26128](https://redirect.github.com/spring-projects/spring-framework/issues/26128)
- PathMatchingResourcePatternResolver fails to resolve resources from JAR located in path with '#' on JDK 11+ [#26105](https://redirect.github.com/spring-projects/spring-framework/issues/26105)
- UrlPathHelper#removeJsessionid doesn't remove the jsessionid from the URL [#26083](https://redirect.github.com/spring-projects/spring-framework/issues/26083)
- NamedParameterJdbcTemplate.batchUpdate does not individually apply the SQL type from each SqlParameterSource argument [#26073](https://redirect.github.com/spring-projects/spring-framework/issues/26073)
- DataBufferUtils#join may release a DataBuffer more than necessary [#26061](https://redirect.github.com/spring-projects/spring-framework/issues/26061)
#### :notebook_with_decorative_cover: Documentation
- Clarify intended advice execution behavior in Spring version 5.2.7+ [#26204](https://redirect.github.com/spring-projects/spring-framework/issues/26204)
- DateTimeFormat ISO.DATE_TIME javadoc contains misleading default note [#26135](https://redirect.github.com/spring-projects/spring-framework/issues/26135)
- Document that `@Transactional` does not propagate to new threads [#26102](https://redirect.github.com/spring-projects/spring-framework/issues/26102)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR15 [#26175](https://redirect.github.com/spring-projects/spring-framework/issues/26175)
### [`v5.2.11.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.11.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.10.RELEASE...v5.2.11.RELEASE)
#### :star: New Features
- StompSubProtocolHandler logs failed authentication with error stack trace [#26037](https://redirect.github.com/spring-projects/spring-framework/issues/26037)
- MergedAnnotationCollectors.toAnnotationSet() should not create intermediate ArrayList [#26036](https://redirect.github.com/spring-projects/spring-framework/issues/26036)
- DefaultSimpUserRegistry prevents event from being published if original SimpMessageHeaderAccessor cannot be found [#26013](https://redirect.github.com/spring-projects/spring-framework/issues/26013)
- DefaultWebClientBuilder copies references [#25993](https://redirect.github.com/spring-projects/spring-framework/issues/25993)
- Inefficient request handling inside ServletRequestDataBinder [#25990](https://redirect.github.com/spring-projects/spring-framework/issues/25990)
#### :beetle: Bug Fixes
- Add FullyQualifiedAnnotationBeanNameGenerator.INSTANCE [#26027](https://redirect.github.com/spring-projects/spring-framework/issues/26027)
- Autowiring does not work reliably in case of dynamically changing prototype bean class [#26020](https://redirect.github.com/spring-projects/spring-framework/issues/26020)
- Order of profiles in tests is not preserved [#26008](https://redirect.github.com/spring-projects/spring-framework/issues/26008)
- SseEmitter: connection closed after first event [#25989](https://redirect.github.com/spring-projects/spring-framework/issues/25989)
#### :notebook_with_decorative_cover: Documentation
- Fix a broken Asciidoctor syntax in core-resources.adoc [#26000](https://redirect.github.com/spring-projects/spring-framework/issues/26000)
### [`v5.2.10.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.10.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.9.RELEASE...v5.2.10.RELEASE)
#### :star: New Features
- Optimize Jackson resource management in codecs [#25910](https://redirect.github.com/spring-projects/spring-framework/issues/25910)
- Avoid creation of unused logger instance in AbstractMediaTypeExpression [#25901](https://redirect.github.com/spring-projects/spring-framework/issues/25901)
- Native Hibernate 5 bootstrapping with JTA transaction manager requires hibernate.transaction.coordinator_class=jta to be set [#25858](https://redirect.github.com/spring-projects/spring-framework/issues/25858)
- Cannot test `@RequestPart` multipart controllers with Servlet MockPart [#25829](https://redirect.github.com/spring-projects/spring-framework/issues/25829)
- Add MariaDB to the supported database products for procedures and functions [#25811](https://redirect.github.com/spring-projects/spring-framework/issues/25811)
- Optimize String argument resolution in MessageTag [#25809](https://redirect.github.com/spring-projects/spring-framework/issues/25809)
- Avoid repeated Charset resolution in MimeType [#25808](https://redirect.github.com/spring-projects/spring-framework/issues/25808)
#### :beetle: Bug Fixes
- Incorrect http response for a request using the Range header for pre-compressed resources [#25976](https://redirect.github.com/spring-projects/spring-framework/issues/25976)
- `@ActiveProfiles` with same profiles but different order results in duplicate ApplicationContext [#25973](https://redirect.github.com/spring-projects/spring-framework/issues/25973)
- LinkedMultiValueMap downstream issue with MultiValueMapAdapter package private base class [#25960](https://redirect.github.com/spring-projects/spring-framework/issues/25960)
- DataBufferUtils.CompositeMatcher causes poor performance when one or more matchers does not match [#25915](https://redirect.github.com/spring-projects/spring-framework/issues/25915)
- HttpSeverOperations overrides content-length to 0 on HTTP HEAD [#25908](https://redirect.github.com/spring-projects/spring-framework/issues/25908)
- jsessionid breaks request mappings when removeSemicolonContent is turned off [#25864](https://redirect.github.com/spring-projects/spring-framework/issues/25864)
- JettyClientHttpConnector triggers early cancellation [#25849](https://redirect.github.com/spring-projects/spring-framework/issues/25849)
- Race condition in DataBufferUtils.readAsynchronousFileChannel resulting in FD leak (Channel remains open) [#25831](https://redirect.github.com/spring-projects/spring-framework/issues/25831)
- SimpMessagingTemplate.convertAndSend results in UnsupportedOperationException when Spring Cloud Sleuth is present [#25821](https://redirect.github.com/spring-projects/spring-framework/issues/25821)
- ClassCastException when wiring bean using method injection (NullBean instead of 'null') [#25806](https://redirect.github.com/spring-projects/spring-framework/issues/25806)
- Thread-scoped bean creation freezes if dependent bean is retrieved before dependency bean [#25801](https://redirect.github.com/spring-projects/spring-framework/issues/25801)
- Sending an event as part of the EMF lock triggers a deadlock [#25799](https://redirect.github.com/spring-projects/spring-framework/issues/25799)
- Wrong type inference in Kotlin while overriding RequestMappingHandlerMapping#getMappingForMethod [#25657](https://redirect.github.com/spring-projects/spring-framework/issues/25657)
- SseEmitter (ResponseBodyEmitter) keeps collecting messages if not initialized [#25442](https://redirect.github.com/spring-projects/spring-framework/issues/25442)
#### :notebook_with_decorative_cover: Documentation
- Correct DispatcherServlet initialization sample webmvc.adoc [#25965](https://redirect.github.com/spring-projects/spring-framework/issues/25965)
- Document that TransactionalEventListener only works with non-reactive transactions [#25805](https://redirect.github.com/spring-projects/spring-framework/issues/25805)
- Published reference documentation contains unnecessary folders and files [#25783](https://redirect.github.com/spring-projects/spring-framework/issues/25783)
- Incorrect example in javadocs of Assert.notNull(object, messageSupplier) [#25774](https://redirect.github.com/spring-projects/spring-framework/issues/25774)
#### :hammer: Dependency Upgrades
- Upgrade to RSocket 1.0.3 [#25957](https://redirect.github.com/spring-projects/spring-framework/issues/25957)
- Upgrade to Reactor Dysprosium-SR13 [#25946](https://redirect.github.com/spring-projects/spring-framework/issues/25946)
### [`v5.2.9.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.9.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.8.RELEASE...v5.2.9.RELEASE)
#### :star: New Features
- HttpHeaders.setContentDispositionFormData should ignore empty filename [#25769](https://redirect.github.com/spring-projects/spring-framework/issues/25769)
- StringDecoder does not provide a way to configure the default charset [#25762](https://redirect.github.com/spring-projects/spring-framework/issues/25762)
- MimeMessageHelper.addAttachment: configurable encoding of attachment filename [#25755](https://redirect.github.com/spring-projects/spring-framework/issues/25755)
- Current log level not checked by LogAccessor supplier-enabled logging methods [#25741](https://redirect.github.com/spring-projects/spring-framework/issues/25741)
- PropertiesLoaderSupport should ignore socket/connect exceptions as well [#25717](https://redirect.github.com/spring-projects/spring-framework/issues/25717)
- Avoid repeated calls to getPathWithinApplication from UrlPathHelper.getLookupPathForRequest [#25669](https://redirect.github.com/spring-projects/spring-framework/issues/25669)
- Avoid full singleton lock for DefaultSingletonBeanRegistry.getSingleton(beanName, false) [#25667](https://redirect.github.com/spring-projects/spring-framework/issues/25667)
- XStreamMarshaller should avoid direct use of CompositeClassLoader which is not exported by XStream in OSGi [#25662](https://redirect.github.com/spring-projects/spring-framework/issues/25662)
- Avoid LinkedList performance issues through use of ArrayDeque [#25652](https://redirect.github.com/spring-projects/spring-framework/issues/25652)
- Introduce createContext() factory method in AbstractGenericContextLoader [#25600](https://redirect.github.com/spring-projects/spring-framework/pull/25600)
- Declare MessagePostProcessor as a `@FunctionalInterface` [#25571](https://redirect.github.com/spring-projects/spring-framework/pull/25571)
- Assert preconditions for MergedAnnotations.from() factory methods [#25568](https://redirect.github.com/spring-projects/spring-framework/issues/25568)
- Provide access to AbstractRoutingDataSource's resolved target DataSources [#25544](https://redirect.github.com/spring-projects/spring-framework/issues/25544)
- Possible optimization in UrlResource [#25531](https://redirect.github.com/spring-projects/spring-framework/issues/25531)
- Refine use of substring operations [#25445](https://redirect.github.com/spring-projects/spring-framework/pull/25445)
- Cache abstraction does not log hit / miss for synchronized access [#25248](https://redirect.github.com/spring-projects/spring-framework/issues/25248)
#### :beetle: Bug Fixes
- Issue with Forwarded Header and Multiple Values [#25737](https://redirect.github.com/spring-projects/spring-framework/issues/25737)
- CallMetaDataContext.reconcileParameters overwrites cursor name [#25707](https://redirect.github.com/spring-projects/spring-framework/issues/25707)
- VerifyErrors when using SpEL compilation with Thymeleaf when invoking a default method defined in an interface [#25706](https://redirect.github.com/spring-projects/spring-framework/issues/25706)
- SQLErrorCodesFactory.getErrorCodes(DataSource) returns empty error codes if access to transactional connection fails [#25681](https://redirect.github.com/spring-projects/spring-framework/issues/25681)
- Make "org.springframework.util.unit.DataSize" class Serializable [#25675](https://redirect.github.com/spring-projects/spring-framework/issues/25675)
- Joda-Time presence check fails to detect Joda-Time 2.x specifically [#25655](https://redirect.github.com/spring-projects/spring-framework/issues/25655)
- Regression in SimpleThreadScope introduced in 5.2.7 [#25618](https://redirect.github.com/spring-projects/spring-framework/issues/25618)
- Potential integer overflow in ExecutorConfigurationSupport.setAwaitTerminationSeconds(int) and AbstractResourceBasedMessageSource.setCacheSeconds(int) [#25613](https://redirect.github.com/spring-projects/spring-framework/issues/25613)
- Remove session on 4xx response from WebSocket handshake [#25608](https://redirect.github.com/spring-projects/spring-framework/pull/25608)
- spring-jdbc don't set out parameter name from metadata for Postgresql function after [issue#25399](https://redirect.github.com/issue/spring-framework/issues/25399) [#25588](https://redirect.github.com/spring-projects/spring-framework/issues/25588)
- FileUrlResource isWritable method returns true if URL protocol is not indicating a file [#25584](https://redirect.github.com/spring-projects/spring-framework/pull/25584)
- Lazy dependency proxy does not populate bean dependencies [#25562](https://redirect.github.com/spring-projects/spring-framework/issues/25562)
- Bean creation fails with StackOverflowError after upgrading from 5.1.13 to 5.2.7 [#25546](https://redirect.github.com/spring-projects/spring-framework/issues/25546)
- StaticListableBeanFactory.isSingleton() returns false for singleton beans [#25522](https://redirect.github.com/spring-projects/spring-framework/issues/25522)
- Standalone MockMvc ignores `@RestControllerAdvice` annotation attributes [#25520](https://redirect.github.com/spring-projects/spring-framework/issues/25520)
- MockHttpServletResponse reset() does not reset charset field [#25501](https://redirect.github.com/spring-projects/spring-framework/issues/25501)
- AnnotationTypeMappings does not filter repeatable annotations [#25483](https://redirect.github.com/spring-projects/spring-framework/pull/25483)
- Wrong error message for type mismatch in jsonPath().value() [#25480](https://redirect.github.com/spring-projects/spring-framework/issues/25480)
- Fix infinite loop bug in AnnotationScanner [#25429](https://redirect.github.com/spring-projects/spring-framework/pull/25429)
- Overloaded `@Bean` method with name mismatch causes bean to be created twice (in case of ASM processing) [#25263](https://redirect.github.com/spring-projects/spring-framework/issues/25263)
#### :notebook_with_decorative_cover: Documentation
- Prevent confusion about build(boolean) method in UriComponentsBuilder [#25604](https://redirect.github.com/spring-projects/spring-framework/pull/25604)
- Document how to specify Jackson JSON view serialization hints with `@RestController` and Webflux [#25596](https://redirect.github.com/spring-projects/spring-framework/issues/25596)
- Inconsistent log level in `@Bean` javadoc and ConfigurationClassEnhancer [#25590](https://redirect.github.com/spring-projects/spring-framework/issues/25590)
- Fix asciidoctor syntax for source [#25539](https://redirect.github.com/spring-projects/spring-framework/pull/25539)
- Improve Javadoc for `@RequestMapping`#params [#25482](https://redirect.github.com/spring-projects/spring-framework/issues/25482)
- Document that SimpleCacheManager requires caches to be initialized when not used as a bean [#22988](https://redirect.github.com/spring-projects/spring-framework/issues/22988)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR12 [#25730](https://redirect.github.com/spring-projects/spring-framework/issues/25730)
#### :heart: Contributors
We'd like to thank all the contributors who worked on this release!
- [@eitan613](https://redirect.github.com/eitan613)
- [@yfei-z](https://redirect.github.com/yfei-z)
- [@diguage](https://redirect.github.com/diguage)
- [@genie2014](https://redirect.github.com/genie2014)
- [@maciejmiklas](https://redirect.github.com/maciejmiklas)
- [@marschall](https://redirect.github.com/marschall)
- [@XenoAmess](https://redirect.github.com/XenoAmess)
- [@yilianhuaixiao](https://redirect.github.com/yilianhuaixiao)
### [`v5.2.8.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.8.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.7.RELEASE...v5.2.8.RELEASE)
#### :star: New Features
- Defer creating logger in StandardWebSocketHandlerAdapter [#25427](https://redirect.github.com/spring-projects/spring-framework/issues/25427)
- MutablePropertySources will not find or remove proxied sources [#25369](https://redirect.github.com/spring-projects/spring-framework/issues/25369)
- Profiles should be comparable when created via Profiles.of() [#25340](https://redirect.github.com/spring-projects/spring-framework/issues/25340)
- Avoid re-creating RSocketRequester instance per subscriber [#25330](https://redirect.github.com/spring-projects/spring-framework/issues/25330)
- Hoist Class.getName() from String concatenation to dodge an issue related to profile pollution [#25324](https://redirect.github.com/spring-projects/spring-framework/pull/25324)
- Improve Random seed in SocketUtils [#25321](https://redirect.github.com/spring-projects/spring-framework/pull/25321)
- Support fragments in UriComponentsBuilder.fromHttpUrl() [#25300](https://redirect.github.com/spring-projects/spring-framework/issues/25300)
- Support for custom cache registration in CaffeineCacheManager [#25230](https://redirect.github.com/spring-projects/spring-framework/issues/25230)
- Don't get ContentCachingResponseWrapper in ShallowEtagHeaderFilter so that users can extend this wrapper [#24976](https://redirect.github.com/spring-projects/spring-framework/issues/24976)
- Unnecessarily alarming stack trace logged during scheduler resolution [#23268](https://redirect.github.com/spring-projects/spring-framework/issues/23268)
- Expose a setExceptionListener method in DefaultJmsListenerContainerFactory \[SPR-17570] [#22102](https://redirect.github.com/spring-projects/spring-framework/issues/22102)
#### :beetle: Bug fixes
- UriComponentsBuilder.cloneBuilder() cause sharing query parameters between builders [#25423](https://redirect.github.com/spring-projects/spring-framework/issues/25423)
- SimpleJdbcCall does not find stored function with PostgreSQL driver 42.2.11 [#25399](https://redirect.github.com/spring-projects/spring-framework/issues/25399)
- MappingJackson2HttpMessageConverter might be too specific in its Charset support [#25322](https://redirect.github.com/spring-projects/spring-framework/issues/25322)
- ReactorNetty websocket issue for multiple clients with different protocols [#25315](https://redirect.github.com/spring-projects/spring-framework/issues/25315)
- Mutating a ServerHttpRequest breaks the existing context path [#25279](https://redirect.github.com/spring-projects/spring-framework/issues/25279)
- ServerHttpRequest.getSslInfo() always returns null for reactor-netty HTTP/2 requests [#25278](https://redirect.github.com/spring-projects/spring-framework/issues/25278)
- NoRollbackFor rule causes TransactionAspectSupport to log unwarranted "exception overridden" error on WebSphere [#25253](https://redirect.github.com/spring-projects/spring-framework/issues/25253)
- AbstractJackson2HttpMessageConverter - Check for encoding breaks JSON to POJO de-serialization experience [#25247](https://redirect.github.com/spring-projects/spring-framework/issues/25247)
- The AbstractTemplateViewResolver class is not abstract [#25240](https://redirect.github.com/spring-projects/spring-framework/issues/25240)
- WebClient: NPE and leak in case connection is reset by server. [#25216](https://redirect.github.com/spring-projects/spring-framework/issues/25216)
- Oracle LOB segments holding TEMP space after executing SP using SimpleJdbcCall with SqlParameterSource [#22972](https://redirect.github.com/spring-projects/spring-framework/issues/22972)
- IllegalReferenceCountException happens when the operation was canceled [#22594](https://redirect.github.com/spring-projects/spring-framework/issues/22594)
- DefaultListableBeanFactory.getBean(Class) may throw NoSuchBeanDefinitionException when removeBeanDefinition is being called simultaneously to remove an unrelated bean [#22263](https://redirect.github.com/spring-projects/spring-framework/issues/22263)
#### :notebook_with_decorative_cover: Documentation
- Clarify enforceInitMethod/enforceDestroyMethod default values in AbstractBeanDefinition [#25402](https://redirect.github.com/spring-projects/spring-framework/issues/25402)
- Improve JavaDoc for ConfigurableApplicationContext.refresh() [#25380](https://redirect.github.com/spring-projects/spring-framework/issues/25380)
- Fix interface and class names in examples in core-aop doc [#25351](https://redirect.github.com/spring-projects/spring-framework/pull/25351)
- Wording changes [#25314](https://redirect.github.com/spring-projects/spring-framework/pull/25314)
- Fix typo in Java example for handler class [#25302](https://redirect.github.com/spring-projects/spring-framework/pull/25302)
- Improve Javadoc for [@Value](https://redirect.github.com/Value) regarding supported expressions [#25284](https://redirect.github.com/spring-projects/spring-framework/issues/25284)
- Fix syntax in validation examples [#25251](https://redirect.github.com/spring-projects/spring-framework/pull/25251)
- Document exception handling limitations in TaskDecorator implementations (specifically for ThreadPoolTaskExecutor#submit) [#25231](https://redirect.github.com/spring-projects/spring-framework/issues/25231)
#### :hammer: Dependency upgrades
- Upgrade to Reactor Dysprosium-SR10 [#25376](https://redirect.github.com/spring-projects/spring-framework/issues/25376)
- Upgrade to nohttp 0.0.5 [#25266](https://redirect.github.com/spring-projects/spring-framework/issues/25266)
#### :heart: Contributors
We’d like to thank all the contributors who worked on our current release!
- [@origoni](https://redirect.github.com/origoni)
- [@Buzzardo](https://redirect.github.com/Buzzardo)
- [@wonwoo](https://redirect.github.com/wonwoo)
- [@jryan128](https://redirect.github.com/jryan128)
- [@MaksimKoniukhov](https://redirect.github.com/MaksimKoniukhov)
- [@stsypanov](https://redirect.github.com/stsypanov)
### [`v5.2.7.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.7.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.6.RELEASE...v5.2.7.RELEASE)
#### :star: New Features
- Implement reliable invocation order for advice within an `@Aspect` [#25186](https://redirect.github.com/spring-projects/spring-framework/issues/25186)
- Performance enhancement in execution of ResponseEntity.of() [#25183](https://redirect.github.com/spring-projects/spring-framework/issues/25183)
- Support for shared GroovyClassLoader in GroovyScriptFactory [#25177](https://redirect.github.com/spring-projects/spring-framework/issues/25177)
- Suggest making a Set.size() > 0 judgement for AbstractApplicationContext.earlyApplicationEvents [#25161](https://redirect.github.com/spring-projects/spring-framework/issues/25161)
- Make use of custom types configurable in YamlProcessor [#25152](https://redirect.github.com/spring-projects/spring-framework/issues/25152)
- Avoid need for default constructor in ContextAnnotationAutowireCandidateResolver subclasses [#25131](https://redirect.github.com/spring-projects/spring-framework/issues/25131)
- ConstructorResolver.resolveConstructorArguments() return value issue [#25130](https://redirect.github.com/spring-projects/spring-framework/issues/25130)
- Introduce serializeToByteArray/deserializeFromByteArray convenience methods [#25117](https://redirect.github.com/spring-projects/spring-framework/issues/25117)
- Custom HTTP Method on MockServerHttpRequest [#25109](https://redirect.github.com/spring-projects/spring-framework/issues/25109)
- Missing null checks in AbstractMessageChannel.addInterceptor/setInterceptors [#25088](https://redirect.github.com/spring-projects/spring-framework/issues/25088)
- Avoid full synchronization in AbstractRefreshableApplicationContext.getBeanFactory() since it can lead to massive thread blocking [#25081](https://redirect.github.com/spring-projects/spring-framework/issues/25081)
- Simplify use of HttpContext in HttpComponentsClientHttpRequestFactory in support of user associated connections [#25066](https://redirect.github.com/spring-projects/spring-framework/issues/25066)
- ResolvableType forClass fails when a type in the generic signature isn't present [#25064](https://redirect.github.com/spring-projects/spring-framework/issues/25064)
- Include timeout unit in shutdown failure logging [#25058](https://redirect.github.com/spring-projects/spring-framework/pull/25058)
- Drop unnecessary intermediate StringBuilder.toString() call in ServerSentEventHttpMessageReader [#25024](https://redirect.github.com/spring-projects/spring-framework/pull/25024)
- Fix concurrency issues in XStreamMarshaller [#25017](https://redirect.github.com/spring-projects/spring-framework/issues/25017)
- Introduce mechanism to discover whether a reactive type registered in ReactiveAdapterRegistry uses deferred computation [#24995](https://redirect.github.com/spring-projects/spring-framework/issues/24995)
- Avoid logging exception for closed session in AbstractSockJsSession [#24986](https://redirect.github.com/spring-projects/spring-framework/issues/24986)
- Include response body in RestTemplate exception when there is no suitable HttpMessageConverter [#24964](https://redirect.github.com/spring-projects/spring-framework/issues/24964)
#### :beetle: Bug Fixes
- ExchangeStrategies custom codec's reader & writer are not registered [#25149](https://redirect.github.com/spring-projects/spring-framework/pull/25149)
- MultiValueMapAdapter.getFirst fails with IndexOutOfBoundsException in case of empty List [#25140](https://redirect.github.com/spring-projects/spring-framework/issues/25140)
- WebSphereUowTransactionManager causes exception for PROPAGATION_SUPPORTS when timeout is specified [#25132](https://redirect.github.com/spring-projects/spring-framework/issues/25132)
- Avoid ClassCastException on IllegalArgumentException when invoking sync get cache method [#25110](https://redirect.github.com/spring-projects/spring-framework/pull/25110)
- DefaultServerRequestBuilder does not respect attributes when building the ServerRequest [#25106](https://redirect.github.com/spring-projects/spring-framework/issues/25106)
- Fix race condition in WriteResultPublisher between subscription and error in publishError [#25096](https://redirect.github.com/spring-projects/spring-framework/pull/25096)
- Jackson message converters and codecs do not respect character encoding in canRead/canWrite [#25076](https://redirect.github.com/spring-projects/spring-framework/issues/25076)
- DefaultClientResponseBuilder empty logPrefix when creating a DefaultClientResponse based on another [#25069](https://redirect.github.com/spring-projects/spring-framework/issues/25069)
- HttpHeaders equals may return false without comparing actual content [#25034](https://redirect.github.com/spring-projects/spring-framework/issues/25034)
- Fix race condition in WriteResultPublisher between subscription and completion in publishComplete [#24989](https://redirect.github.com/spring-projects/spring-framework/pull/24989)
#### :notebook_with_decorative_cover: Documentation
- Javadoc for hibernate5 OpenSessionInViewFilter mentions FlushMode.NEVER [#25158](https://redirect.github.com/spring-projects/spring-framework/issues/25158)
- Document that the Map backing a MapPropertySource should not contain null values [#25142](https://redirect.github.com/spring-projects/spring-framework/issues/25142)
- Javadoc for JdbcOperations.batchUpdate should mention that negative values are possible [#25138](https://redirect.github.com/spring-projects/spring-framework/issues/25138)
- Fix URI pattern example in webflux.adoc [#25137](https://redirect.github.com/spring-projects/spring-framework/pull/25137)
- Document how reactive transactions work for cancellation in 5.2 and how it will work in 5.3 [#25091](https://redirect.github.com/spring-projects/spring-framework/issues/25091)
- Document whether code can rely on specific subclasses of HttpClientErrorException/HttpServerErrorException being thrown from DefaultResponseErrorHandler [#25067](https://redirect.github.com/spring-projects/spring-framework/issues/25067)
- Fix SpelEvaluationException with example code [#25045](https://redirect.github.com/spring-projects/spring-framework/pull/25045)
- javadoc: remove a comment documented a limitation on `@Lookup` annotation [#25044](https://redirect.github.com/spring-projects/spring-framework/pull/25044)
- Document all predefined variables from ApplicationContext available in SpEL expressions [#25037](https://redirect.github.com/spring-projects/spring-framework/issues/25037)
- Document ReactiveTransactionManager support in reference manual [#25036](https://redirect.github.com/spring-projects/spring-framework/pull/25036)
- Document ReactiveTransactionManager support [#25030](https://redirect.github.com/spring-projects/spring-framework/issues/25030)
- Change to placeholder value in XML is not reevaluated at runtime [#25022](https://redirect.github.com/spring-projects/spring-framework/issues/25022)
- Add missing `@PathVariable` declarations in examples in webmvc.adoc [#25006](https://redirect.github.com/spring-projects/spring-framework/pull/25006)
#### :hammer: Dependency Upgrades
- Upgrade to Reactor Dysprosium-SR8 [#25210](https://redirect.github.com/spring-projects/spring-framework/issues/25210)
#### :heart: Contributors
We'd like to thank all the contributors who worked on this release!
- [@dlsrb6342](https://redirect.github.com/dlsrb6342)
- [@danielra](https://redirect.github.com/danielra)
- [@urisimchoni](https://redirect.github.com/urisimchoni)
- [@swapy](https://redirect.github.com/swapy)
- [@quaff](https://redirect.github.com/quaff)
- [@limo520](https://redirect.github.com/limo520)
- [@WEIZIBIN](https://redirect.github.com/WEIZIBIN)
- [@stsypanov](https://redirect.github.com/stsypanov)
### [`v5.2.6.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.6.RELEASE)
[Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.5.RELEASE...v5.2.6.RELEASE)
#### :star: New Features
- Cache meta-annotations for stereotype check in AnnotationBeanNameGenerator [#24980](https://redirect.github.com/spring-projects/spring-framework/issues/24980)
- Use WebsocketServerSpec in ReactorNettyRequestUpgradeStrategy [#24959](https://redirect.github.com/spring-projects/spring-framework/issues/24959)
- Warn about unsupported "/path/\*\*/other" patterns with WebFlux PathPatternParser [#24958](https://redirect.github.com/spring-projects/spring-framework/issues/24958)
- Allow override of data binding in ModelAttributeMethodArgumentResolver [#24947](https://redirect.github.com/spring-projects/spring-framework/pull/24947)
- Rid pointless wrapping with BufferedInputStream from class reading [#24946](https://redirect.github.com/spring-projects/spring-framework/pull/24946)
- ResponseStatusExceptionResolver ignores ResponseStatusException headers [#24944](https://redirect.github.com/spring-projects/spring-framework/issues/24944)
- Caching of autowire candidate metadata for lazy beans [#24904](https://redirect.github.com/spring-projects/spring-framework/issues/24904)
- Put a limit on the size of DefaultSingletonBeanRegistry#suppressedExceptions [#24902](https://redirect.github.com/spring-projects/spring-framework/issues/24902)
- Prevent setting parent bean factory to self [#24900](https://redirect.github.com/spring-projects/spring-framework/pull/24900)
- Honor overridden AcceptHeaderLocaleContextResolver.getDefaultLocale() [#24871](https://redirect.github.com/spring-projects/spring-framework/pull/24871)
- Improve performance of StringUtils.deleteAny() [#24870](https://redirect.github.com/spring-projects/spring-framework/pull/24870)
- 'args' argument of 'JdbcTemplate#query(String, Object\[], RowCallbackHandler)' method should be marked `@Nullable` [#24839](https://redirect.github.com/spring-projects/spring-framework/issues/24839)
- Improve usage of ByteArrayOutputStream/ByteArrayInputStream [#24805](https://redirect.github.com/spring-projects/spring-framework/pull/24805)
- Simplify conversion of ByteArrayOutputStream to String [#24785](https://redirect.github.com/spring-projects/spring-framework/pull/24785)
- Optimize sortPostProcessors() in PostProcessorRegistrationDelegate [#24776](https://redirect.github.com/spring-projects/spring-framework/issues/24776)
- Reduce byte array allocations in StompEncoder [#24694](https://redirect.github.com/spring-projects/spring-framework/pull/24694)
#### :beetle: Bug Fixes
- ConflictingBeanDefinitionException on repeated index evaluation [#24978](https://redirect.github.com/spring-projects/spring-framework/issues/24978)
- Reintroduce synthesized annotation attribute value caching [#24970](https://redirect.github.com/spring-projects/spring-framework/issues/24970)
- MockHttpServletRequest should not strip brackets from IPV6 address supplied via Host header [#24916](https://redirect.github.com/spring-projects/spring-framework/issues/24916)
- Memory leak in MimeTypeUtils LRUCache [#24886](https://redirect.github.com/spring-projects/spring-framework/issues/24886)
- Annotation searches potentially synthesize annotations unnecessarily [#24861](https://redirect.github.com/spring-projects/spring-framework/issues/24861)
- Connection created by SingleConnectionDataSource with suppressClose=true always returns isClosed=false even if the target connection is closed [#24853](https://redirect.github.com/spring-projects/spring-framework/issues/24853)
- DefaultListableBeanFactory.getBean(Class) throws NoSuchBeanDefinitionException on existing bean if getBean(Class) previously tried before registration [#24852](https://redirect.github.com/spring-projects/spring-framework/issues/24852)
- Cannot dispatch without an AsyncContext when an expected error is thrown [#24835](https://redirect.github.com/spring-projects/spring-framework/issues/24835)
- Duplicate Vary headers after enabling CORS filter [#24829](https://redirect.github.com/spring-projects/spring-framework/issues/24829)
- Make it possible to run Spring MVC without kotlin-reflect [#24828](https://redirect.github.com/spring-projects/spring-framework/issues/24828)
- Recursively copy directory with symbolic link [#24823](https://redirect.github.com/spring-projects/spring-framework/pull/24823)
- Connection leak with WebClient retrieve().toBodilessEntity() [#24788](https://redirect.github.com/spring-projects/spring-framework/issues/24788)
- Using UriComponentsBuilder.cloneBuilder does not copy uriVariables [#24782](https://redirect.github.com/spring-projects/spring-framework/pull/24782)
- Fix empty domain handling in ResponseCookie [#24758](https://redirect.github.com/spring-projects/spring-framework/pull/24758)
- Illegal reflective access warning for interface-based lookup method injection [#24657](https://redirect.github.com/spring-projects/spring-framework/issues/24657)
- Annotation retrieval performance degradation after 5.2 [#23905](https://redirect.github.com/spring-projects/spring-framework/issues/23905)
#### :notebook_with_decorative_cover: Documentation
- HttpHeaders#getETagValuesAsList(String) does not document IAE [#24950](https://redirect.github.com/spring-projects/spring-framework/issues/24950)
- Describe that bean disposal is unsupported for the beans created by FactoryBean [#24948](https://redirect.github.com/spring-projects/spring-framework/issues/24948)
- Deprecate AnnotationFilter.NONE (since MergedAnnotations always filters java.lang.\* annotations) [#24932](https://redirect.github.com/spring-projects/spring-framework/issues/24932)
- Improve Javadoc [#24908](https://redirect.github.com/spring-projects/spring-framework/pull/24908)
- Fix Javadoc in PathPattern [#24841](https://redirect.github.com/spring-projects/spring-framework/pull/24841)
- Document default constructor as fallback for multiple non-`@Autowired` constructors [#24838](https://redirect.github.com/spring-projects/spring-framework/issues/24838)
- Document precedence for `@DynamicPropertySource` [#24837](https://redirect.github.com/spring-projects/spring-framework/issues/24837)
- Documentation: AbstractBeanDefinition.getBeanClass() vs BeanFactory.getType [#24816](https://redirect.github.com/spring-projects/spring-framework/issues/24816)
- Fix typos and improve readability in Webflux documentation [#24781](https://redirect.github.com/spring-projects/spring-framework/pull/24781)
- Document role of views within Spring application [#24777](https://redirect.github.com/spring-projects/spring-framework/issues/24777)
- Clarify how to avoid favoring path extensions as well as deprecation warnings [#24642](https://redirect.github.com/spring-projects/spring-framework/issues/24642)
#### :hammer: Dependency Upgrades
- Upgrade to RSocket 1.0 RC7 [#24934](https://redirect.github.com/spring-projects/spring-framework/issues/24934)
- Upgrade to Reactor Dysprosium-SR7 [#24892](https://redirect.github.com/spring-projects/spring-framework/issues/24892)
#### :heart: Contributors
We'd like to thank all the contributors who worked on this release!
- [@KimTaehee](https://redirect.github.com/KimTaehee)
- [@onnadi-sa](https://redirect.github.com/onnadi-sa)
- [@mavigdor](https://redirect.github.com/mavigdor)
- [@wilkinsona](https://redirect.github.com/wilkinsona)
- [@mikaelparsekyan](https://redirect.github.com/mikaelparsekyan)
- [@Deycoesr](https://redirect.github.com/Deycoesr)
- [@izeye](https://redirect.github.com/izeye)
- [@brianhartung](https://redirect.github.com/brianhartung)
- [@larsgrefer](https://redirect.github.com/larsgrefer)
- [@Buzzardo](https://redirect.github.com/Buzzardo)
- [@chenqimiao](https://redirect.github.com/chenqimiao)
- [@rahulmlokurte](https
This PR contains the following updates:
3.1.1.RELEASE
->5.2.18.RELEASE
By merging this PR, the issue #18 will be automatically resolved and closed:
Unreachable
Unreachable
Reachable
Unreachable
Unreachable
Unreachable
Unreachable
Unreachable
Unreachable
Release Notes
spring-projects/spring-framework (org.springframework:spring-web)
### [`v5.2.18.RELEASE`](https://redirect.github.com/spring-projects/spring-framework/releases/tag/v5.2.18.RELEASE) [Compare Source](https://redirect.github.com/spring-projects/spring-framework/compare/v5.2.17.RELEASE...v5.2.18.RELEASE) #### :star: New Features - Enhance DefaultResponseErrorHandler to allow logging complete error response body [#27558](https://redirect.github.com/spring-projects/spring-framework/issues/27558) - DefaultMessageListenerContainer does not log an error/warning when consumer tasks have been rejected [#27457](https://redirect.github.com/spring-projects/spring-framework/issues/27457) #### :lady_beetle: Bug Fixes - Performance impact of con.getContentLengthLong() in AbstractFileResolvingResource.isReadable() downloading huge jars to check component length [#27549](https://redirect.github.com/spring-projects/spring-framework/issues/27549) - Performance impact of ResourceUrlEncodingFilter on HttpServletResponse#encodeURL [#27548](https://redirect.github.com/spring-projects/spring-framework/issues/27548) - Avoid duplicate JCacheOperationSource bean registration in \