Closed renovate[bot] closed 10 months ago
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 6.x
releases. But if you manually upgrade to 6.x
then Renovate will re-enable minor
and patch
updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.
This PR contains the following updates:
5.3.21
->6.0.0
GitHub Vulnerability Alerts
CVE-2016-1000027
Pivotal Spring Framework before 6.0.0 suffers from a potential remote code execution (RCE) issue if used for Java deserialization of untrusted data. Depending on how the library is implemented within a product, this issue may or not occur, and authentication may be required.
Maintainers recommend investigating alternative components or a potential mitigating control. Version 4.2.6 and 3.2.17 contain enhanced documentation advising users to take precautions against unsafe Java deserialization, version 5.3.0 deprecate the impacted classes and version 6.0.0 removed it entirely.
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.30...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.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) ##### :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) #### :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) #### :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) #### :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)Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.