pferron / Reachability

0 stars 0 forks source link

Update dependency org.springframework:spring-web to v6 - autoclosed #7

Closed mend-for-github-com[bot] closed 8 months ago

mend-for-github-com[bot] commented 8 months ago

This PR contains the following updates:

Package Type Update Change
org.springframework:spring-web compiled major 5.3.6 -> 6.0.0

By merging this PR, the issue #4 will be automatically resolved and closed:

Severity CVSS Score CVE Reachability
Critical Critical 9.8 CVE-2016-1000027

Unreachable

Critical Critical 9.8 CVE-2022-22965

Unreachable

High High 8.1 CVE-2024-22243

Unreachable

High High 7.8 CVE-2021-22118

Unreachable

Medium Medium 5.3 CVE-2022-22970

Unreachable

Medium Medium 5.3 CVE-2022-22970

Unreachable

Medium Medium 4.3 CVE-2021-22060

Unreachable

Medium Medium 4.3 CVE-2021-22060

Unreachable

Medium Medium 4.3 CVE-2021-22096

Unreachable

Medium Medium 4.3 CVE-2021-22096

Unreachable


Release Notes

spring-projects/spring-framework (org.springframework:spring-web) ### [`v6.0.0`](https://togithub.com/spring-projects/spring-framework/releases/tag/v6.0.0) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.32...v6.0.0) See [What's New in Spring Framework 6.x](https://togithub.com/spring-projects/spring-framework/wiki/What%27s-New-in-Spring-Framework-6.x) and [Upgrading to Spring Framework 6.x](https://togithub.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-6.x) for upgrade instructions and details of new features. #### :star: New Features - Avoid direct URL construction and URL equality checks [#​29486](https://togithub.com/spring-projects/spring-framework/issues/29486) - Simplify creating RFC 7807 responses from functional endpoints [#​29462](https://togithub.com/spring-projects/spring-framework/issues/29462) - Allow test classes to provide runtime hints via declarative mechanisms [#​29455](https://togithub.com/spring-projects/spring-framework/issues/29455) #### :notebook_with_decorative_cover: Documentation - Align javadoc of DefaultParameterNameDiscoverer with its behavior [#​29494](https://togithub.com/spring-projects/spring-framework/pull/29494) - Document AOT support in the TestContext framework [#​29482](https://togithub.com/spring-projects/spring-framework/issues/29482) - Document Ahead of Time processing in the reference guide [#​29350](https://togithub.com/spring-projects/spring-framework/issues/29350) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2022.0.0 [#​29465](https://togithub.com/spring-projects/spring-framework/issues/29465) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@​ophiuhus](https://togithub.com/ophiuhus) and [@​wilkinsona](https://togithub.com/wilkinsona) ### [`v5.3.32`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.32) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.31...v5.3.32) #### :star: New Features - Add CORS support for Private Network Access [#​31974](https://togithub.com/spring-projects/spring-framework/issues/31974) - Avoid early getMostSpecificMethod resolution in CommonAnnotationBeanPostProcessor [#​31969](https://togithub.com/spring-projects/spring-framework/issues/31969) #### :lady_beetle: Bug Fixes - Consistent parsing of user information in UriComponentsBuilder [#​32247](https://togithub.com/spring-projects/spring-framework/issues/32247) - QualifierAnnotationAutowireCandidateResolver.checkQualifier does identity checks when comparing arrays used as qualifier fields [#​32108](https://togithub.com/spring-projects/spring-framework/issues/32108) - Guard against multiple body subscriptions in Jetty and JDK reactive responses [#​32101](https://togithub.com/spring-projects/spring-framework/issues/32101) - Static resources caching issues with ShallowEtagHeaderFilter and Jetty caching directives [#​32051](https://togithub.com/spring-projects/spring-framework/issues/32051) - ChannelSendOperator.WriteBarrier race condition in request(long) method leads to response being dropped [#​32021](https://togithub.com/spring-projects/spring-framework/issues/32021) - Spring AOP does not propagate arguments for dynamic prototype-scoped advice [#​31964](https://togithub.com/spring-projects/spring-framework/issues/31964) - MergedAnnotation swallows IllegalAccessException for attribute method [#​31961](https://togithub.com/spring-projects/spring-framework/issues/31961) - CronTrigger hard-codes default ZoneId instead of participating in scheduler-wide Clock setup [#​31950](https://togithub.com/spring-projects/spring-framework/issues/31950) - `MergedAnnotations` finds duplicate annotations on method in multi-level interface hierarchy [#​31825](https://togithub.com/spring-projects/spring-framework/issues/31825) - PathEditor cannot handle absolute Windows paths with forward slashes [#​31728](https://togithub.com/spring-projects/spring-framework/issues/31728) - Include Hibernate's `Query.scroll()` in `SharedEntityManagerCreator`'s `queryTerminatingMethods` set [#​31684](https://togithub.com/spring-projects/spring-framework/issues/31684) - TypeDescriptor does not check generics in `equals` method (for ConversionService caching) [#​31674](https://togithub.com/spring-projects/spring-framework/issues/31674) - Slow SpEL performance due to method sorting in ReflectiveMethodResolver [#​31665](https://togithub.com/spring-projects/spring-framework/issues/31665) - Jackson encoder releases resources in wrong order [#​31657](https://togithub.com/spring-projects/spring-framework/issues/31657) - WebSocketMessageBrokerStats has null stats for stompSubProtocolHandler since 5.3.2 [#​31642](https://togithub.com/spring-projects/spring-framework/issues/31642) #### :notebook_with_decorative_cover: Documentation - Document cron-vs-quartz parsing convention for dayOfWeek part in CronExpression [#​32131](https://togithub.com/spring-projects/spring-framework/issues/32131) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.41 [#​32276](https://togithub.com/spring-projects/spring-framework/issues/32276) ### [`v5.3.31`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.31) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.30...v5.3.31) #### :star: New Features - `Log4jLog` needs to re-resolve `ExtendedLogger` on deserialization (for compatibility with Log4J 2.21) [#​31583](https://togithub.com/spring-projects/spring-framework/issues/31583) #### :lady_beetle: Bug Fixes - MessageBuilder#createMessage should not define the payload as `@Nullable` [#​31611](https://togithub.com/spring-projects/spring-framework/issues/31611) - Avoid duplicate JAR resources in `PathMatchingResourcePatternResolver` on MS Windows [#​31603](https://togithub.com/spring-projects/spring-framework/issues/31603) - Spring web integration commons fileupload receives files and other parameter uploads, with a null pointer [#​31564](https://togithub.com/spring-projects/spring-framework/issues/31564) - Function column out doesn't resolve to `SqlOutParameter` [#​31560](https://togithub.com/spring-projects/spring-framework/issues/31560) - Resolve to empty MultiValueMap when no matrix variables are provided [#​31484](https://togithub.com/spring-projects/spring-framework/issues/31484) - BeanUtils.copyProperties() consumes large amount of memory [#​31481](https://togithub.com/spring-projects/spring-framework/issues/31481) - CGLIB `BeanCopier` falls back to `ClassLoader.defineClass` for public target [#​31436](https://togithub.com/spring-projects/spring-framework/issues/31436) - R2DBC Connection is closed during transaction when using TransactionAwareConnectionFactoryProxy [#​31411](https://togithub.com/spring-projects/spring-framework/issues/31411) - `HibernateJpaDialect` and `HibernateExceptionTranslator` throw `SQLExceptionTranslator`-provided exception instead of returning it [#​31410](https://togithub.com/spring-projects/spring-framework/issues/31410) - `NamedParameterJdbcTemplate` throws unexpected exception for `null` query [#​31394](https://togithub.com/spring-projects/spring-framework/issues/31394) - `LazyResolutionMessage` does not implement proper `toString` [#​31385](https://togithub.com/spring-projects/spring-framework/issues/31385) - Illegal reflective access in `ContextOverridingClassLoader.isEligibleForOverriding` [#​31233](https://togithub.com/spring-projects/spring-framework/issues/31233) #### :notebook_with_decorative_cover: Documentation - Clarify documentation for `@Transactional` on interfaces [#​31401](https://togithub.com/spring-projects/spring-framework/issues/31401) - Default behavior of BeanPropertyRowMapper.getColumnValue(ResultSet, int, Class) inconsistent with code [#​31349](https://togithub.com/spring-projects/spring-framework/issues/31349) - Referencing a `@Bean` method in a `@Configuration` class' `@PostConstruct` method leads to circular reference [#​31339](https://togithub.com/spring-projects/spring-framework/issues/31339) - Incorrect reference information about CGLIB supported method visibility [#​31311](https://togithub.com/spring-projects/spring-framework/issues/31311) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.38 [#​31584](https://togithub.com/spring-projects/spring-framework/issues/31584) ### [`v5.3.30`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.30) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.29...v5.3.30) #### :star: New Features - Optimize `ClassUtils#getMostSpecificMethod` [#​31100](https://togithub.com/spring-projects/spring-framework/issues/31100) - Optimize whitespace checks in `StringUtils` [#​31069](https://togithub.com/spring-projects/spring-framework/issues/31069) - Align validation metadata handling in `PayloadMethodArgumentResolver` [#​31056](https://togithub.com/spring-projects/spring-framework/issues/31056) - Register an override for an existing adapter in `ReactiveAdapterRegistry` [#​31048](https://togithub.com/spring-projects/spring-framework/issues/31048) - Make bean initialization deterministic for multiple `@Autowired` methods on same bean class [#​30994](https://togithub.com/spring-projects/spring-framework/issues/30994) - Performance bottlenecks while creating scoped bean instances [#​30892](https://togithub.com/spring-projects/spring-framework/issues/30892) #### :lady_beetle: Bug Fixes - Possible classloader leak through incomplete clearing of annotation caches [#​31176](https://togithub.com/spring-projects/spring-framework/issues/31176) - Spring `LogFactory` implementation deviates from original Apache `LogFactory` in terms of abstract method declarations [#​31167](https://togithub.com/spring-projects/spring-framework/issues/31167) - Bean injection fails due to `nullSafeConciseToString()` invoking `isEmpty()` on a `Map`/`Collection` proxy [#​31156](https://togithub.com/spring-projects/spring-framework/issues/31156) - SpelExpressionParser throws IllegalStateException instead of ParseException for invalid expression [#​31099](https://togithub.com/spring-projects/spring-framework/issues/31099) - `@DynamicPropertySource` in `@Nested` test class cannot override dynamic properties from enclosing class [#​31085](https://togithub.com/spring-projects/spring-framework/issues/31085) - `TransactionalApplicationListenerMethodAdapter` should find `@TransactionalEventListener` on target class method [#​31037](https://togithub.com/spring-projects/spring-framework/issues/31037) - ScheduledAnnotationBeanPostProcessor: graceful shutdown should not interrupt currently running jobs [#​31020](https://togithub.com/spring-projects/spring-framework/issues/31020) - Permgen memory leak due to `ClassInfo` caching in `java.beans.Introspector` on JDK 11/17 [#​31005](https://togithub.com/spring-projects/spring-framework/issues/31005) - `MethodIntrospector.selectMethods(?)` fails to find methods in case of special bridge method arrangement [#​30907](https://togithub.com/spring-projects/spring-framework/issues/30907) #### :notebook_with_decorative_cover: Documentation - Fix documentation: Passing in Lists of Values for IN Clause does not work with JdbcTemplate [#​31229](https://togithub.com/spring-projects/spring-framework/issues/31229) - Refine CORS documentation for wildcard processing [#​31168](https://togithub.com/spring-projects/spring-framework/issues/31168) - Propagation REQUIRES_NEW may cause connection pool deadlock [#​31040](https://togithub.com/spring-projects/spring-framework/issues/31040) - Clarify R2DBC `ConnectionAccessor` and `DatabasePopulator` exception declarations [#​30933](https://togithub.com/spring-projects/spring-framework/issues/30933) - Doc: Avoid deadlock in `@PostConstruct` through SmartInitializingSingleton or ContextRefreshedEvent [#​30889](https://togithub.com/spring-projects/spring-framework/issues/30889) ### [`v5.3.29`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.29) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.28...v5.3.29) #### :star: New Features - Avoid illegal reflective access in ContextOverridingClassLoader.isEligibleForOverriding [#​30868](https://togithub.com/spring-projects/spring-framework/issues/30868) - Improve diagnostics for CGLIB ClassLoader issues with shared classes in parent ClassLoader [#​30866](https://togithub.com/spring-projects/spring-framework/issues/30866) - `JdbcTemplate` does not call `handleWarnings` in case of exception [#​30852](https://togithub.com/spring-projects/spring-framework/issues/30852) - Tolerate `AnnotationUtils.isCandidateClass` call with `null` as annotation type [#​30843](https://togithub.com/spring-projects/spring-framework/issues/30843) - Simplify `DefaultSingletonBeanRegistry.isDependent()` [#​30841](https://togithub.com/spring-projects/spring-framework/issues/30841) - Provide explicit support for collections, maps, and arrays in `ObjectUtils.nullSafeConciseToString()` [#​30811](https://togithub.com/spring-projects/spring-framework/issues/30811) - Extend list of supported types in `ObjectUtils.nullSafeConciseToString()` [#​30806](https://togithub.com/spring-projects/spring-framework/issues/30806) - Align ConcurrentMapCacheManager locking behavior with CaffeineCacheManager [#​30781](https://togithub.com/spring-projects/spring-framework/issues/30781) - `ResolvableType.hasUnresolvableGenerics()` should cache its result [#​30715](https://togithub.com/spring-projects/spring-framework/issues/30715) - Ensure Spring `LogFactory` contains all public methods from Apache `LogFactory` [#​30711](https://togithub.com/spring-projects/spring-framework/issues/30711) - Translate SQL Exception with State S0001 and Vendor Code 2628 to a Spring Exception in MSSQL 2019 [#​30682](https://togithub.com/spring-projects/spring-framework/issues/30682) #### :lady_beetle: Bug Fixes - For a prototype bean, if first-time rejected value is null, subsequent value will wrongly be null always [#​30809](https://togithub.com/spring-projects/spring-framework/issues/30809) - Revert changes to `toString()` in `FieldError` [#​30800](https://togithub.com/spring-projects/spring-framework/issues/30800) - Fix log level on error with `@TransactionalEventListener` [#​30784](https://togithub.com/spring-projects/spring-framework/issues/30784) - SerializableTypeWrapper does not consistently catch InvocationTargetException [#​30767](https://togithub.com/spring-projects/spring-framework/issues/30767) - NPE in MvcUriComponentsBuilder with no-arg target method on interface [#​30757](https://togithub.com/spring-projects/spring-framework/issues/30757) - `Jackson2ObjectMapperBuilder` breaks when `modules` customizer follows `modulesToInstall` [#​30752](https://togithub.com/spring-projects/spring-framework/issues/30752) - Spring ORM SpringBeanContainer when trying to create a bean fails with not found bean definition, and fallbacks to default hibernate bean creation [#​30685](https://togithub.com/spring-projects/spring-framework/issues/30685) #### :notebook_with_decorative_cover: Documentation - ResultSet holdability into the View layer broken by Hibernate 5 [#​30863](https://togithub.com/spring-projects/spring-framework/issues/30863) - Clarify `ReactiveTransactionManager` exception declarations [#​30819](https://togithub.com/spring-projects/spring-framework/issues/30819) - Doc: `JdbcTransactionManager` vs `DataSourceTransactionManager` [#​30814](https://togithub.com/spring-projects/spring-framework/issues/30814) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.34 [#​30873](https://togithub.com/spring-projects/spring-framework/issues/30873) ### [`v5.3.28`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.28) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.27...v5.3.28) #### :star: New Features - ClassLoader can be null in DeserializingConverter and should be annotated with `@Nullable` [#​30672](https://togithub.com/spring-projects/spring-framework/issues/30672) - Performance optimization in AbstractBeanFactoryBasedTargetSource.hashCode() [#​30585](https://togithub.com/spring-projects/spring-framework/issues/30585) - Consistent support for MultiValueMap and common Map implementations in CollectionFactory [#​30441](https://togithub.com/spring-projects/spring-framework/issues/30441) - Reject null and empty SpEL expressions [#​30373](https://togithub.com/spring-projects/spring-framework/issues/30373) - Introduce `Environment.matchesProfiles()` for profile expressions [#​30226](https://togithub.com/spring-projects/spring-framework/issues/30226) #### :lady_beetle: Bug Fixes - Change of behaviour for UUID in bean validation output in v5.3.27 [#​30662](https://togithub.com/spring-projects/spring-framework/issues/30662) - Spring Framework 5.3.27 appears to cause issues in OSGi environment [#​30637](https://togithub.com/spring-projects/spring-framework/issues/30637) - Inconsistent ProxyCallbackFilter#equals/hashCode methods in CglibAopProxy [#​30616](https://togithub.com/spring-projects/spring-framework/issues/30616) - EclipseLinkJpaDialect: Unexpected default isolation levels [#​30589](https://togithub.com/spring-projects/spring-framework/issues/30589) - ThreadLocalTargetSource does not include actual target bean name in NamedThreadLocal [#​30586](https://togithub.com/spring-projects/spring-framework/issues/30586) - ApplicationListenerMethodAdapter inconsistently publishes events from CompletableFuture [#​30584](https://togithub.com/spring-projects/spring-framework/issues/30584) - For `@Bean` method that returns `null`, `@Autowired` injects `NullBean` instead of `null` for cached arguments [#​30551](https://togithub.com/spring-projects/spring-framework/issues/30551) - Make maximum SpEL expression length configurable [#​30446](https://togithub.com/spring-projects/spring-framework/issues/30446) - Respect TaskDecorator configuration on DefaultManagedTaskExecutor [#​30443](https://togithub.com/spring-projects/spring-framework/issues/30443) #### :notebook_with_decorative_cover: Documentation - Document which `@Scheduled` attributes support SpEL expressions [#​30642](https://togithub.com/spring-projects/spring-framework/issues/30642) - FileSystemUtils::deleteRecursively Javadoc refers to File instead of Path [#​30555](https://togithub.com/spring-projects/spring-framework/issues/30555) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.33 [#​30656](https://togithub.com/spring-projects/spring-framework/issues/30656) ### [`v5.3.27`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.27) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.26...v5.3.27) #### :star: New Features - Limit string concatenation in SpEL expressions [#​30331](https://togithub.com/spring-projects/spring-framework/issues/30331) - Limit SpEL expression length [#​30329](https://togithub.com/spring-projects/spring-framework/issues/30329) - Disable variable assignment in SimpleEvaluationContext [#​30327](https://togithub.com/spring-projects/spring-framework/issues/30327) - Introduce `StringUtils.truncate()` [#​30291](https://togithub.com/spring-projects/spring-framework/issues/30291) - Introduce `ObjectUtils.nullSafeConciseToString()` [#​30287](https://togithub.com/spring-projects/spring-framework/issues/30287) - Make `HttpComponentsHeadersAdapter#getFirst` nullable [#​30269](https://togithub.com/spring-projects/spring-framework/issues/30269) #### :lady_beetle: Bug Fixes - Fix regression in ReactorServerHttpRequest related to IPV6 Zone id with "%" [#​30314](https://togithub.com/spring-projects/spring-framework/issues/30314) - SSE breaks with indenting serializer in WebMvc.fn [#​30302](https://togithub.com/spring-projects/spring-framework/issues/30302) - Increase max regex length in SpEL expressions [#​30298](https://togithub.com/spring-projects/spring-framework/issues/30298) - NullPointerException on timeout in HttpComponentsClientHttpConnector when using Apache HttpComponents [#​30246](https://togithub.com/spring-projects/spring-framework/issues/30246) - Wrong MockRestRequestMatchers.header() method in spring-test being invoked (JDK issue?) [#​30235](https://togithub.com/spring-projects/spring-framework/issues/30235) - TypeNotPresentException: org/springframework/cglib/proxy/NoOp not present on Java 17 [#​30228](https://togithub.com/spring-projects/spring-framework/issues/30228) - Refine generic type management in `AbstractMessageWriterResultHandler` [#​30215](https://togithub.com/spring-projects/spring-framework/issues/30215) - MvcUriComponentsBuilder.fromMethodCall breaks for controller with CharSequence return type [#​30212](https://togithub.com/spring-projects/spring-framework/issues/30212) - Handle all exceptions for stored proc output param retrieval in `SharedEntityManagerCreator` [#​30164](https://togithub.com/spring-projects/spring-framework/issues/30164) #### :notebook_with_decorative_cover: Documentation - Fix `@PathVariable` reference documentation code snippets [#​30258](https://togithub.com/spring-projects/spring-framework/issues/30258) - Fix example in Javadoc for `@EnableWebSocket` [#​30187](https://togithub.com/spring-projects/spring-framework/issues/30187) - Fix anchor in link to "Web on Reactive Stack" chapter [#​30163](https://togithub.com/spring-projects/spring-framework/issues/30163) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.31 [#​30315](https://togithub.com/spring-projects/spring-framework/issues/30315) ### [`v5.3.26`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.26) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.25...v5.3.26) #### :star: New Features - Improve diagnostics in SpEL for `matches` operator [#​30145](https://togithub.com/spring-projects/spring-framework/issues/30145) - Improve diagnostics in SpEL for repeated text [#​30143](https://togithub.com/spring-projects/spring-framework/issues/30143) - Increase scope of regex pattern cache for the SpEL `matches` operator [#​30141](https://togithub.com/spring-projects/spring-framework/issues/30141) - Minor updates in HandlerMappingIntrospector [#​30128](https://togithub.com/spring-projects/spring-framework/issues/30128) - Allow SnakeYaml 2.0 runtime compatibility [#​30097](https://togithub.com/spring-projects/spring-framework/issues/30097) - Add missing `@Nullable` annotations to `LogMessage.format` methods [#​30009](https://togithub.com/spring-projects/spring-framework/issues/30009) - ASM upgrade for JDK 20/21 support [#​29966](https://togithub.com/spring-projects/spring-framework/issues/29966) - Allow MockRest to match header/queryParam value list with one Matcher [#​29964](https://togithub.com/spring-projects/spring-framework/issues/29964) - Add `MockMvc.multipart()` Kotlin extensions with `HttpMethod` [#​29941](https://togithub.com/spring-projects/spring-framework/issues/29941) - Release R2DBC connection when cleanup fails in transaction [#​29925](https://togithub.com/spring-projects/spring-framework/issues/29925) - org.springframework.web.context.ContextLoader should lazily load ContextLoader.properties [#​29909](https://togithub.com/spring-projects/spring-framework/issues/29909) - Improve generated default name for `@JmsListener` subscription [#​29902](https://togithub.com/spring-projects/spring-framework/issues/29902) - Include all Hibernate query methods in `SharedEntityManagerCreator`'s `queryTerminatingMethods` set [#​29888](https://togithub.com/spring-projects/spring-framework/issues/29888) - SQL supplier in R2DBC `DatabaseClient` is eagerly invoked [#​29887](https://togithub.com/spring-projects/spring-framework/issues/29887) - Spring Framework 5.3.x is incompatible with Jetty 10 (Client) [#​29867](https://togithub.com/spring-projects/spring-framework/issues/29867) - Possible infinite forward loop with MockMvcWebConnection [#​29866](https://togithub.com/spring-projects/spring-framework/issues/29866) - Refine `Jackson2ObjectMapperBuilder#configureFeature` exception handling [#​29860](https://togithub.com/spring-projects/spring-framework/issues/29860) - Fix R2dbcTransactionManager debug log: don't log a Mono [#​29824](https://togithub.com/spring-projects/spring-framework/issues/29824) #### :lady_beetle: Bug Fixes - RequestedContentTypeResolver does not ignore quality factor when filtering \*/\* media types [#​30121](https://togithub.com/spring-projects/spring-framework/issues/30121) - SpEL: cannot call methods declared in `java.lang.Object` on a JDK proxy [#​30118](https://togithub.com/spring-projects/spring-framework/issues/30118) - CaffeineCacheManager getCache method cause thread block [#​30085](https://togithub.com/spring-projects/spring-framework/issues/30085) - Protect JMS connection creation against prepareConnection errors [#​30051](https://togithub.com/spring-projects/spring-framework/issues/30051) - ReactorServerHttpRequest does not reflect forwarded host and port when `forwarding-header-strategy=native` or cloud platform detected [#​29974](https://togithub.com/spring-projects/spring-framework/issues/29974) - WebSocket stats not updated correctly when sessions cleared [#​29947](https://togithub.com/spring-projects/spring-framework/issues/29947) - Explicit target ClassLoader for interface-based proxies in MvcUriComponentsBuilder [#​29914](https://togithub.com/spring-projects/spring-framework/issues/29914) - Closing an ApplicationContext leads to Exception at ExecutorServiceAdapter [#​29908](https://togithub.com/spring-projects/spring-framework/issues/29908) - Invalid Accept header results in IllegalStateException [#​29836](https://togithub.com/spring-projects/spring-framework/issues/29836) - JettyWebSocketCreator referenced from a method is not visible from class loader with `Jetty10RequestUpgradeStrategy` [#​29256](https://togithub.com/spring-projects/spring-framework/issues/29256) #### :notebook_with_decorative_cover: Documentation - Fix minor spacings in webflux docs [#​30095](https://togithub.com/spring-projects/spring-framework/issues/30095) - `@AspectJ` argument name resolution algorithm is outdated in reference manual [#​30057](https://togithub.com/spring-projects/spring-framework/issues/30057) - Fix "Configuring a Global Date and Time Format" example [#​30036](https://togithub.com/spring-projects/spring-framework/issues/30036) - Consistent `@Bean` method return type for equivalence with XML example [#​29970](https://togithub.com/spring-projects/spring-framework/issues/29970) - Update `@DynamicPropertySource` examples regarding changes in Testcontainers [#​29940](https://togithub.com/spring-projects/spring-framework/issues/29940) - Clarify semantics of `primitivesDefaultedForNullValue` in `BeanPropertyRowMapper` [#​29926](https://togithub.com/spring-projects/spring-framework/issues/29926) - Clearly document that `DataClassRowMapper` supports Java records [#​29922](https://togithub.com/spring-projects/spring-framework/issues/29922) - Outdated Javadoc for AbstractApplicationContext.postProcessBeanFactory [#​29916](https://togithub.com/spring-projects/spring-framework/issues/29916) #### :hammer: Dependency Upgrades - Upgrade to Reactor Netty 2020.0.30 [#​30116](https://togithub.com/spring-projects/spring-framework/issues/30116) ### [`v5.3.25`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.25) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.24...v5.3.25) #### :star: New Features - JmsTemplate.convertAndSend throws NullPointerException during shutdown [#​29719](https://togithub.com/spring-projects/spring-framework/issues/29719) - Optimize object creation in RequestMappingHandlerMapping#handleNoMatch [#​29667](https://togithub.com/spring-projects/spring-framework/issues/29667) - Add title to SockJS iFrames for accessibility compliance [#​29596](https://togithub.com/spring-projects/spring-framework/issues/29596) #### :lady_beetle: Bug Fixes - ResourceHandlers cannot resolve static resources with certain wildcard patterns [#​29716](https://togithub.com/spring-projects/spring-framework/issues/29716) - AnnotatedElementUtils.findMergedRepeatableAnnotations does not fetch results when other attributes exist for container annotation [#​29686](https://togithub.com/spring-projects/spring-framework/issues/29686) - BeanWrapperImpl NPE in setWrappedInstance after invoking getPropertyValue (with SimpleBeanInfoFactory) [#​29684](https://togithub.com/spring-projects/spring-framework/issues/29684) - SpEL `ConstructorReference` does not generate AST representation of arrays [#​29666](https://togithub.com/spring-projects/spring-framework/issues/29666) - SpEL: Two double quotes are replaced by one double quote in single quoted `String` literal (and vice versa) [#​29653](https://togithub.com/spring-projects/spring-framework/issues/29653) - SpEL string literal misses single quotation marks in toStringAST() [#​29652](https://togithub.com/spring-projects/spring-framework/issues/29652) - 500 error from WebFlux when parsing Content-Type leads to InvalidMediaTypeException [#​29637](https://togithub.com/spring-projects/spring-framework/issues/29637) - `WebMvcConfigurationSupport` should not catch `Throwable` for `SourceHttpMessageConverter` [#​29537](https://togithub.com/spring-projects/spring-framework/issues/29537) #### :notebook_with_decorative_cover: Documentation - Update Jakarta Mail info in ref docs [#​29708](https://togithub.com/spring-projects/spring-framework/issues/29708) - Improve documentation for literals in SpEL expressions [#​29701](https://togithub.com/spring-projects/spring-framework/issues/29701) - Fix some typos in Kotlin WebClient example code [#​29542](https://togithub.com/spring-projects/spring-framework/issues/29542) - Fix link to Bean Utils Light Library in BeanUtils Javadoc [#​29536](https://togithub.com/spring-projects/spring-framework/issues/29536) - Fix link to WebFlux section in reference manual [#​29526](https://togithub.com/spring-projects/spring-framework/issues/29526) - Link to Spring WebFlux section is broken [#​29517](https://togithub.com/spring-projects/spring-framework/issues/29517) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.27 [#​29798](https://togithub.com/spring-projects/spring-framework/issues/29798) ### [`v5.3.24`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.24) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.23...v5.3.24) #### :star: New Features - Avoid reflection for annotation method invocations [#​29448](https://togithub.com/spring-projects/spring-framework/issues/29448) - Avoid unnecessary allocations in StompDecoder#unescape [#​29443](https://togithub.com/spring-projects/spring-framework/pull/29443) - Avoid String allocations in MediaType.checkParameters [#​29428](https://togithub.com/spring-projects/spring-framework/pull/29428) - Reduce allocations caused by producible media types [#​29412](https://togithub.com/spring-projects/spring-framework/pull/29412) - Provide optional SimpleBeanInfoFactory for better introspection performance in 5.3.x [#​29330](https://togithub.com/spring-projects/spring-framework/issues/29330) - Filter out `null` WebSocket session attributes [#​29315](https://togithub.com/spring-projects/spring-framework/issues/29315) - Introduce TestSocketUtils as a replacement for SocketUtils [#​29132](https://togithub.com/spring-projects/spring-framework/pull/29132) - Avoid Commons Logging API for using LoggingCacheErrorHandler with a custom logger [#​28678](https://togithub.com/spring-projects/spring-framework/pull/28678) #### :lady_beetle: Bug Fixes - Missing SessionFactory property (filter AutoCloseable from PropertyDescriptors) [#​29480](https://togithub.com/spring-projects/spring-framework/issues/29480) - SpEL ternary and Elvis expressions are missing enclosing parentheses in toStringAST() [#​29463](https://togithub.com/spring-projects/spring-framework/issues/29463) - If-Unmodified-Since header check removes Last-Modified and Etag headers from response, even if condition passes [#​29362](https://togithub.com/spring-projects/spring-framework/issues/29362) - Annotation searches fail for non-public repeatable annotations [#​29301](https://togithub.com/spring-projects/spring-framework/issues/29301) - AbstractBeanFactory's interaction with BeanPostProcessorCacheAwareList is not fully thread-safe [#​29299](https://togithub.com/spring-projects/spring-framework/issues/29299) - WebTestClient cannot assert custom HTTP status code [#​29283](https://togithub.com/spring-projects/spring-framework/issues/29283) - Body token not expected error when trying to upload a large multipart file [#​29227](https://togithub.com/spring-projects/spring-framework/issues/29227) - Avoid resizing of Maps created by CollectionUtils [#​29190](https://togithub.com/spring-projects/spring-framework/pull/29190) - DefaultWebClient logging sensitive information in URI [#​29148](https://togithub.com/spring-projects/spring-framework/issues/29148) - Fix SimpleMailMessage nullability annotations [#​29139](https://togithub.com/spring-projects/spring-framework/pull/29139) - Webflux fails to apply the rule for controller methods returning void to kotlin suspend functions returning Unit [#​27629](https://togithub.com/spring-projects/spring-framework/issues/27629) - Resource.isFile() return true when the resource path actually not exists [#​26707](https://togithub.com/spring-projects/spring-framework/issues/26707) - AnnotatedElementUtils does not find merged repeatable annotations on other repeatable annotations [#​20279](https://togithub.com/spring-projects/spring-framework/issues/20279) #### :notebook_with_decorative_cover: Documentation - Fix two typos in integration.adoc and webflux.adoc [#​29469](https://togithub.com/spring-projects/spring-framework/pull/29469) - Fix typo: "as describe in" -> "as described in" [#​29393](https://togithub.com/spring-projects/spring-framework/pull/29393) - Fix typos [#​29364](https://togithub.com/spring-projects/spring-framework/pull/29364) - Correct documentation for "other return values" from a web controller method [#​29349](https://togithub.com/spring-projects/spring-framework/issues/29349) - Document how to use WebJars without `webjars-locator-core` dependency [#​29322](https://togithub.com/spring-projects/spring-framework/issues/29322) - Update RestTemplate Javadoc with regards to setting interceptors on startup vs at runtime [#​29311](https://togithub.com/spring-projects/spring-framework/issues/29311) - Document how to switch to the default set of TestExecutionListeners [#​29281](https://togithub.com/spring-projects/spring-framework/issues/29281) - Document limitation of AopTestUtils.getUltimateTargetObject() regarding non-static TargetSource [#​29276](https://togithub.com/spring-projects/spring-framework/issues/29276) - Fix typo in WebSocket reference doc regarding subscription header [#​29228](https://togithub.com/spring-projects/spring-framework/pull/29228) - Fix MockMvc sample setup [#​29201](https://togithub.com/spring-projects/spring-framework/pull/29201) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.25 [#​29464](https://togithub.com/spring-projects/spring-framework/issues/29464) #### :heart: Contributors We'd like to thank all the contributors who worked on this release! - [@​sangmin7648](https://togithub.com/sangmin7648) - [@​izeye](https://togithub.com/izeye) - [@​dreis2211](https://togithub.com/dreis2211) - [@​catmug](https://togithub.com/catmug) - [@​inabajunmr](https://togithub.com/inabajunmr) - [@​iamgd67](https://togithub.com/iamgd67) - [@​davidcostanzo](https://togithub.com/davidcostanzo) - [@​jprinet](https://togithub.com/jprinet) - [@​stgerhardt](https://togithub.com/stgerhardt) - [@​onobc](https://togithub.com/onobc) - [@​vpavic](https://togithub.com/vpavic) ### [`v5.3.23`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.23) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.22...v5.3.23) #### :star: New Features - Introduce AnnotationUtils.isSynthesizedAnnotation(Annotation) [#​29054](https://togithub.com/spring-projects/spring-framework/issues/29054) - Introduce createContext() factory method in AbstractGenericWebContextLoader [#​28983](https://togithub.com/spring-projects/spring-framework/issues/28983) - Support TreeSet collection type in CollectionFactory.createCollection() without using reflection [#​28949](https://togithub.com/spring-projects/spring-framework/pull/28949) - Document when RequestEntity.getUrl() throws an UnsupportedOperationException [#​28930](https://togithub.com/spring-projects/spring-framework/issues/28930) - Deprecate NestedIOException [#​28929](https://togithub.com/spring-projects/spring-framework/issues/28929) - Make isConnected() in WebSocketConnectionManager public [#​28785](https://togithub.com/spring-projects/spring-framework/pull/28785) - Expose headers from STOMP RECEIPT frame to registered callbacks [#​28715](https://togithub.com/spring-projects/spring-framework/pull/28715) - Make WebClientException serializable [#​28321](https://togithub.com/spring-projects/spring-framework/issues/28321) #### :lady_beetle: Bug Fixes - Ordering inconsistency with beans defined in parent context [#​29105](https://togithub.com/spring-projects/spring-framework/issues/29105) - RelativeRedirectResponseWrapper does not commit response in sendRedirect [#​29050](https://togithub.com/spring-projects/spring-framework/pull/29050) - MockServerContainerContextCustomizerFactory does not support `@Nested` tests [#​29037](https://togithub.com/spring-projects/spring-framework/issues/29037) - Request to improve KotlinSerializationJsonHttpMessageConverter logic in RestTemplate [#​29008](https://togithub.com/spring-projects/spring-framework/issues/29008) - WebFlux: multipart requests hang sometimes [#​28963](https://togithub.com/spring-projects/spring-framework/issues/28963) - DataBufferUtils.write(Publisher, Path) loses context [#​28933](https://togithub.com/spring-projects/spring-framework/issues/28933) - connectionTimeOut and readTimeout not working on UrlResource [#​28909](https://togithub.com/spring-projects/spring-framework/issues/28909) - SockJsServiceRegistration#setSupressCors has a typo and should be deprecated [#​28853](https://togithub.com/spring-projects/spring-framework/pull/28853) - RenderingResponse does not set status code on redirect views [#​28839](https://togithub.com/spring-projects/spring-framework/issues/28839) - Avoid IllegalArgumentException when setting WebSocket error status [#​28836](https://togithub.com/spring-projects/spring-framework/pull/28836) - Loss of context path after using ServerRequest.from [#​28820](https://togithub.com/spring-projects/spring-framework/issues/28820) - ResponseCookie does not declare nullability annotations consistently for domain and path [#​28780](https://togithub.com/spring-projects/spring-framework/pull/28780) #### :notebook_with_decorative_cover: Documentation - Fix typo in data-access section [#​29048](https://togithub.com/spring-projects/spring-framework/pull/29048) - Correct description of `@RequestParam` with WebFlux [#​28944](https://togithub.com/spring-projects/spring-framework/pull/28944) - Fix broken kdoc-api links in kotlin.adoc [#​28908](https://togithub.com/spring-projects/spring-framework/pull/28908) - Fix typos in Javadoc of class AbstractEncoder [#​28885](https://togithub.com/spring-projects/spring-framework/pull/28885) - Fix links in Javadoc and reference docs [#​28876](https://togithub.com/spring-projects/spring-framework/pull/28876) - Add missing closing parenthesis in reference doc [#​28867](https://togithub.com/spring-projects/spring-framework/pull/28867) - Fix typos in Javadoc, reference docs, and code [#​28822](https://togithub.com/spring-projects/spring-framework/pull/28822) - Replace use of the `` HTML tag in Javadoc [#​28819](https://togithub.com/spring-projects/spring-framework/pull/28819) - Fix broken link in rsocket documentation [#​28817](https://togithub.com/spring-projects/spring-framework/pull/28817) - Clarify docs on JNDI properties in Servlet environment [#​28488](https://togithub.com/spring-projects/spring-framework/pull/28488) - Improve documentation of Caching annotations [#​28183](https://togithub.com/spring-projects/spring-framework/pull/28183) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.23 [#​29129](https://togithub.com/spring-projects/spring-framework/issues/29129) #### :heart: Contributors We'd like to thank all the contributors who worked on this release! - [@​boahc077](https://togithub.com/boahc077) - [@​1993heqiang](https://togithub.com/1993heqiang) - [@​luvarqpp](https://togithub.com/luvarqpp) - [@​arend-von-reinersdorff](https://togithub.com/arend-von-reinersdorff) - [@​jensdietrich](https://togithub.com/jensdietrich) - [@​wilkinsona](https://togithub.com/wilkinsona) - [@​npriebe](https://togithub.com/npriebe) - [@​vpavic](https://togithub.com/vpavic) - [@​jupiterhub](https://togithub.com/jupiterhub) - [@​izeye](https://togithub.com/izeye) - [@​napstr](https://togithub.com/napstr) - [@​marcwrobel](https://togithub.com/marcwrobel) - [@​arvyy](https://togithub.com/arvyy) - [@​jbotuck](https://togithub.com/jbotuck) - [@​chanhyeong](https://togithub.com/chanhyeong) - [@​yuezk](https://togithub.com/yuezk) - [@​edfeff](https://togithub.com/edfeff) - [@​adrianbob](https://togithub.com/adrianbob) - [@​FlorianKirmaier](https://togithub.com/FlorianKirmaier) - [@​meloning](https://togithub.com/meloning) ### [`v5.3.22`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.22) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.21...v5.3.22) #### :star: New Features - Improve regex "." matching for URL paths [#​28815](https://togithub.com/spring-projects/spring-framework/issues/28815) - Spring JDBC does not recognize LocalDate and LocalDateTime in javaType to sqlType Mapping [#​28778](https://togithub.com/spring-projects/spring-framework/issues/28778) - ResolvableType.forInstance should return NONE for null instance [#​28776](https://togithub.com/spring-projects/spring-framework/issues/28776) - Correctly identify MaxUploadSizeExceededException through keywords in message from Jetty 9.4.x [#​28759](https://togithub.com/spring-projects/spring-framework/pull/28759) - Introduce StringUtils.trimAllWhitespace(CharSequence) [#​28757](https://togithub.com/spring-projects/spring-framework/issues/28757) - Trim string input in Converters where whitespace is irrelevant [#​28756](https://togithub.com/spring-projects/spring-framework/issues/28756) - Trim string input in PropertyEditors where whitespace is irrelevant [#​28755](https://togithub.com/spring-projects/spring-framework/issues/28755) - Improve diagnostics for CGLIB ClassLoader issues on Java 9+ [#​28747](https://togithub.com/spring-projects/spring-framework/issues/28747) - Create well-known non-interface types in CollectionFactory without using reflection [#​28718](https://togithub.com/spring-projects/spring-framework/issues/28718) - Revise internals of LoggingCacheErrorHandler [#​28672](https://togithub.com/spring-projects/spring-framework/issues/28672) - Simplify creation of LoggingCacheErrorHandler with logged stacktrace [#​28670](https://togithub.com/spring-projects/spring-framework/pull/28670) - Fix DataSourceUtils inconsistent exception handling [#​28669](https://togithub.com/spring-projects/spring-framework/pull/28669) - Introduce lenient parsing in DataSize regarding whitespace [#​28643](https://togithub.com/spring-projects/spring-framework/issues/28643) - Support adding rather than replacing modules in Jackson2ObjectMapperBuilder [#​28633](https://togithub.com/spring-projects/spring-framework/issues/28633) - Add `MockMvcRequestBuilders.multipart(HttpMethod, String, Object...)` [#​28631](https://togithub.com/spring-projects/spring-framework/pull/28631) - Avoid parsing request body in DispatcherServlet for "parameters={masked}" log message [#​28587](https://togithub.com/spring-projects/spring-framework/issues/28587) - Avoid synchronization in AbstractAspectJAdvice#calculateArgumentBindings [#​26377](https://togithub.com/spring-projects/spring-framework/issues/26377) #### :lady_beetle: Bug Fixes - WebFlux multipart temporary file not deleted when the client disconnects early [#​28740](https://togithub.com/spring-projects/spring-framework/issues/28740) - Ensure channelExecutors and taskScheduler in STOMP WebSocket config are qualified [#​28736](https://togithub.com/spring-projects/spring-framework/pull/28736) - MockHttpServletResponse addHeader does not allow Comment part with Set-Cookie header [#​28730](https://togithub.com/spring-projects/spring-framework/issues/28730) - Meta-annotations are unnecessarily synthesized in MergedAnotations [#​28704](https://togithub.com/spring-projects/spring-framework/issues/28704) - `GenericApplicationContext` does not honor `ProtocolResolver` when a resource loader is set via `setResourceLoader()` [#​28703](https://togithub.com/spring-projects/spring-framework/issues/28703) - R2DBC: `@Transactional`(readOnly) is applied to the connection before the transaction has begun [#​28610](https://togithub.com/spring-projects/spring-framework/issues/28610) #### :notebook_with_decorative_cover: Documentation - Fix Kotlin code snippets language [#​28810](https://togithub.com/spring-projects/spring-framework/issues/28810) - Fix typos in reference docs and project documentation [#​28805](https://togithub.com/spring-projects/spring-framework/pull/28805) - Fix and improve Javadoc in spring-beans and spring-aop [#​28803](https://togithub.com/spring-projects/spring-framework/pull/28803) - Fix and improve Javadoc in spring-core and spring-context [#​28802](https://togithub.com/spring-projects/spring-framework/pull/28802) - Fix and improve Javadoc in spring-messaging, spring-jms and spring-expression [#​28800](https://togithub.com/spring-projects/spring-framework/pull/28800) - Fix and improve Javadoc in spring-r2dbc, spring-oxm, spring-orm and spring-jdbc [#​28796](https://togithub.com/spring-projects/spring-framework/pull/28796) - Fix and improve Javadoc in spring-test [#​28795](https://togithub.com/spring-projects/spring-framework/pull/28795) - Fix and improve Javadoc in spring-tx [#​28794](https://togithub.com/spring-projects/spring-framework/pull/28794) - Fix and improve Javadoc in spring-web [#​28791](https://togithub.com/spring-projects/spring-framework/pull/28791) - Fix and improve Javadoc in spring-webflux [#​28790](https://togithub.com/spring-projects/spring-framework/pull/28790) - Fix and improve Javadoc in spring-webmvc [#​28789](https://togithub.com/spring-projects/spring-framework/pull/28789) - Fix and improve Javadoc in spring-websocket [#​28788](https://togithub.com/spring-projects/spring-framework/pull/28788) - Fix Kotlin example for defines a custom `@Production` [#​28680](https://togithub.com/spring-projects/spring-framework/issues/28680) - Fix a typo in ResponseEntity documentation [#​28647](https://togithub.com/spring-projects/spring-framework/issues/28647) - Document that Kotlin inline classes are not supported yet [#​28642](https://togithub.com/spring-projects/spring-framework/issues/28642) - Refine `@Required` Kotlin documentation to use annotation use site targets [#​28630](https://togithub.com/spring-projects/spring-framework/issues/28630) - Fix Kotlin example for `@ComponentScan` basePackages attribute [#​28628](https://togithub.com/spring-projects/spring-framework/issues/28628) - Kotlin examples for setter injection incorrectly use field injection [#​28596](https://togithub.com/spring-projects/spring-framework/issues/28596) - Fix expectations in MockMvc Kotlin documentation [#​28301](https://togithub.com/spring-projects/spring-framework/issues/28301) #### :hammer: Dependency Upgrades - Update to Bouncycastle 1.71 [#​28636](https://togithub.com/spring-projects/spring-framework/pull/28636) - Upgrade to Reactor 2020.0.21 [#​28765](https://togithub.com/spring-projects/spring-framework/issues/28765) #### :heart: Contributors We'd like to thank all the contributors who worked on this release! - [@​jasonjiang9527](https://togithub.com/jasonjiang9527) - [@​izeye](https://togithub.com/izeye) - [@​marcwrobel](https://togithub.com/marcwrobel) - [@​larsgrefer](https://togithub.com/larsgrefer) - [@​jprinet](https://togithub.com/jprinet) - [@​vikeychen](https://togithub.com/vikeychen) - [@​kacperkrzyzak](https://togithub.com/kacperkrzyzak) - [@​kevin0x90](https://togithub.com/kevin0x90) - [@​vpavic](https://togithub.com/vpavic) - [@​CodeInDreams](https://togithub.com/CodeInDreams) - [@​4ra1n](https://togithub.com/4ra1n) ### [`v5.3.21`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.21) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.20...v5.3.21) #### :star: New Features - Expose ThreadPoolTaskExecutor queue size and capacity for metrics [#​28583](https://togithub.com/spring-projects/spring-framework/pull/28583) - Lazily initialize DataSize.PATTERN [#​28560](https://togithub.com/spring-projects/spring-framework/issues/28560) - MockMvcWebTestClient forces HTTP POST for multipart requests [#​28545](https://togithub.com/spring-projects/spring-framework/issues/28545) - Support for CGLIB BeanCopier utility on JDK 17 [#​28530](https://togithub.com/spring-projects/spring-framework/issues/28530) - Allow changes to `org.springframework.web` log category at runtime [#​28477](https://togithub.com/spring-projects/spring-framework/issues/28477) #### :lady_beetle: Bug Fixes - Avoid eager instantiation of non-singleton FactoryBean in getBeanNamesForType [#​28616](https://togithub.com/spring-projects/spring-framework/pull/28616) - ObjectToObjectConverter doesn't consider return type of static methods [#​28609](https://togithub.com/spring-projects/spring-framework/issues/28609) - Charset for input stream ignored in Jaxb2XmlDecoder [#​28599](https://togithub.com/spring-projects/spring-framework/issues/28599) - Support RouterFunction ordering in Spring MVC [#​28595](https://togithub.com/spring-projects/spring-framework/issues/28595) - Always construct new exception on error in DefaultWebClient [#​28550](https://togithub.com/spring-projects/spring-framework/pull/28550) - HierarchicalUriComponents::getPort() throws NumberFormatException with invalid port in URI [#​28521](https://togithub.com/spring-projects/spring-framework/issues/28521) - Cannot serve static resources with spaces from "file:" location when using `PathPattern` and UrlPathHelper is set to not decode [#​27791](https://togithub.com/spring-projects/spring-framework/issues/27791) #### :notebook_with_decorative_cover: Documentation - Fix code sample for nested router functions [#​28603](https://togithub.com/spring-projects/spring-framework/issues/28603) - Fix Kotlin example for `@Required` [#​28590](https://togithub.com/spring-projects/spring-framework/issues/28590) - Fix Kotlin example for dependency injection with static factory method [#​28589](https://togithub.com/spring-projects/spring-framework/issues/28589) - Update documentation regarding nested test class support [#​28579](https://togithub.com/spring-projects/spring-framework/issues/28579) - Update reference docs to use PropertySourcesPlaceholderConfigurer [#​28572](https://togithub.com/spring-projects/spring-framework/pull/28572) - Fix typo in webflux.adoc [#​28542](https://togithub.com/spring-projects/spring-framework/pull/28542) - Fix Javadoc for DatabaseClient [#​28520](https://togithub.com/spring-projects/spring-framework/pull/28520) - CachingConnectionFactory with WebLogic JMS not caching producers nor consumers [#​28500](https://togithub.com/spring-projects/spring-framework/issues/28500) - Fix Kotlin example for static factory method [#​28399](https://togithub.com/spring-projects/spring-framework/issues/28399) #### :hammer: Dependency Upgrades - Upgrade to Reactor 2020.0.20 [#​28612](https://togithub.com/spring-projects/spring-framework/issues/28612) #### :heart: Contributors We'd like to thank all the contributors who worked on this release! - [@​rguihard](https://togithub.com/rguihard) - [@​hsteinmueller](https://togithub.com/hsteinmueller) - [@​gorisanson](https://togithub.com/gorisanson) - [@​fsgonz](https://togithub.com/fsgonz) - [@​pokab](https://togithub.com/pokab) - [@​eltociear](https://togithub.com/eltociear) ### [`v5.3.20`](https://togithub.com/spring-projects/spring-framework/releases/tag/v5.3.20) [Compare Source](https://togithub.com/spring-projects/spring-framework/compare/v5.3.19...v5.3.20) #### :star: New Features - Refine CachedIntrospectionResults property introspection [#​28445](https://togithub.com/spring-projects/spring-framework/issues/28445) - Improve tests and Javadoc on binding to a property of type javax.servlet.Part [#​27830](https://togithub.com/spring-projects/spring-framework/pull/27830) - WritableResource doesn't have parity with Resource in `@Value` etc. \[SPR-10656] [#​15284](https://togithub.com/spring-pro