Skip to content

v6.2.3

Latest
Compare
Choose a tag to compare
@spring-builds spring-builds released this 13 Feb 13:17
· 440 commits to main since this release

⭐ New Features

  • Add form fields to MockMvc Kotlin DSL #34412
  • Make ProblemDetail implement Serializable #34409
  • Support @MockitoSpyBean at the type level on test classes #34408
  • Expose order values of TestExecutionListener implementations as constants #34404
  • ContentDisposition should match attributes in a case-insensitive fashion #34383
  • Provide access to servletPath in ServletRequestPathUtils #34379
  • Use ConversionService to convert POJO to array for SpEL varargs invocations #34371
  • Provide a more actionable CGLIB error message with native #34370
  • Wrap disconnected client exceptions as AsyncRequestNotUsableException in Servlet container onError callback #34363
  • Support RFC 8441 WebSocket upgrade with HTTP/2 CONNECT #34362
  • Optimize default property editor allocations for bean instance creation #34361
  • Continue with pre-instantiation when current bean is in creation already #34349
  • Allow filtering bean instances returned by ObjectProvider#stream() #34318
  • GenericConversionService finds wrong converter for partially unresolvable generic types #34298
  • Avoid re-creating HandlerMethod unless handler is resolved through the BeanFactory #34277
  • UrlResource should leniently handle HTTP endpoints which do not support HEAD #34217
  • Add API counterpart for handling Fallback and 'defaultCandidate=false' beans #34203
  • Add support for multidimensional arrays #34183
  • Add getters to ServerResponseResultHandler #34066
  • Improve diagnostics when a Bean Override cannot be selected by type #34006
  • Expression performance regression due to missing annotation types on context classes #33948

🐞 Bug Fixes

  • PathMatchingResourcePatternResolver failing against non-jar file in classpath #34417
  • GenericTypeResolver Since 6.2.0, generics cannot be obtained correctly in multi-layer interface inheritance (possible regression of #24963) #34386
  • Test Bean Overrides honor fallback qualifier instead of @Primary semantics #34374
  • HTTP interface client raises IllegalArgumentException if query param name contains a colon #34364
  • Quartz-style Nth Day of Week cron expressions can overflow to other month #34360
  • Component scan fails to find jar entries in WEB-INF/classes with embedded Tomcat #34348
  • Check hasNext when when accessing sessionIds from UserDestinationResult #34333
  • Property binding to Map that implements Iterable no longer works #34332
  • GenericTypeResolver returns EmptyType #34328
  • Duplicate BeanOverrideHandler discovered in @Nested test class hierarchy when upgrading to Spring 6.2.2 #34324
  • AnnotationBeanNameGenerator issues warning about explicitly aliased value attribute #34317
  • Stop assuming that AspectJ Advice has JoinPoint as the first argument #34316
  • Constructor binding fails for simple types List/Map/Array and for nested container combinations #34305
  • Change in BeanFactoryUtils.beanNamesForTypeIncludingAncestors() Behavior in Spring Framework 6.2.x causing ClassCastExceptions #34300
  • Data binding does not filter HTTP headers for constructor binding #34292
  • Escaped character in nested placeholder not detected properly and leads to invalid parts #34289
  • ReflectJvmMapping.getKotlinFunction returns null for Kotlin properties #34284
  • ConfigurationClassEnhancer should explicitly set custom ClassLoader on CGLIB Enhancer (aligned with CglibAopProxy) #34274
  • Connection reset exception from RestTemplate call in Spring Web MVC controller is ignored #34264
  • AsyncExecution fails to detect the return type of an annotated method from an interface with a generic #33957
  • Ensure Locale context is available for WebFlux method validation #33810

📔 Documentation

  • Fix reference to ApplicationContext#getAutowireCapableBeanFactory in reference documentation #34400
  • Clarify component scanning of abstract classes with @Lookup methods #34367
  • Minor update in WebSocket STOMP reference documentation #34353
  • Clarify documentation on the usage of RestClient in POST scenarios without response body #34334
  • Document limitation around the port of localAddress in StandardWebSocketSession #34304
  • Fix Javadoc for field reflection hints #34297
  • Improve Javadoc for SpringProperties.getFlag() #34295
  • Link to current AspectJ Javadoc #34293
  • Update Javadoc for SimpleCommandLinePropertySource #34282
  • Update RestClientException Javadoc to refer to RestClient #34270
  • Document order values for TestExecutionListener implementations #34265
  • Document custom HttpServiceArgumentResolver usage #34227

🔨 Dependency Upgrades

  • Upgrade to Micrometer 1.14.4 #34401
  • Upgrade to Reactor 2024.0.3 #34403
  • Upgrade to RSocket 1.1.5 #34402

❤️ Contributors

Thank you to all the contributors who worked on this release:

@JoshuaChen, @Puppy4C, @anaconda875, @brandenclark, @canattofilipe, @dobrosi, @izeye, @jazdw, @khoutz182, @kwondh5217, @pirocraft, @quaff, @remeio, and @tarekmues