Skip to content

v5.3.2

Compare
Choose a tag to compare
@snicoll snicoll released this 09 Dec 07:13

⭐ New Features

  • Refine ConfigurationClassPostProcessor behavior in native images #26236
  • Ability to correlate ByteBuf leak records to log messages for a specific request #26230
  • Avoid CGLIB proxies in websocket/messaging configuration #26227
  • ContentCachingResponseWrapper should not add “Content-Length” when “Transfer-Encoding” is present #26182
  • Allow customization of file extension to media type map for WebFlux static resources #26170
  • Register bean definition dependencies when used via configuration class injected fields #26167
  • Print helpful information in RSocket MetadataExtractor #26130
  • Add ResponseSpec#toEntityFlux overload that accepts BodyExtractor #26114
  • Wildcard is a valid Access-Control-Expose-Headers value #26113
  • Reduce overhead of char[] creation #26101
  • EntityManagerFactory startup failure in deferred mode is only available on first use #26093
  • @DynamicPropertySource is not supported via @NestedTestConfiguration semantics #26091
  • Introduce and() methods in MethodFilter and FieldFilter for composite filters #26063
  • Kotlin extensions for WebClient.ResponseSpec #26030
  • Validate that JUnit Jupiter test methods and lifecycle methods are not annotated with @Autowired #25966
  • Add support for SSE to WebMvc.fn #25920
  • Template URI Variables with newline %0A or %0D are not matched #23252

🪲 Bug Fixes

  • AsyncServerResponse interoperability issue with path variables #26239
  • Remove duplicate "property" in PropertyCacheKey.toString() #26237
  • DataBuffer Leak in Server Response #26232
  • Wrong HttpServletMapping used on INCLUDE in UrlPathHelper.skipServletPathDetermination #26216
  • MockMvc ignores MultipartFile registrations when both files and parts are registered #26166
  • cannot resolve ServerRequest::pathVariable in nested RequestPredicate #26163
  • ConcurrentModificationException in NativeMessageHeaderAccessor#copyHeaders #26155
  • AbstractServerHttpRequest constructor breaks binary compatibility between 5.2.x and 5.3.x #26151
  • Refine kotlinx.serialization support #26147
  • MimeType is no longer actually serializable #26127
  • Resttemplate throws NPE with spring-boot-starter-log4j2 within tests #26120
  • Update default for favorPathExtension to match Javadoc and as intended for 5.3 #26119
  • Spring Boot 2.4 upgrade breaks injection of Principal #26117
  • NoSuchMethodError in UrlPathHelper.skipServletPathDetermination #26112
  • Support allowedOriginPatterns in SockJS config #26108
  • PathMatchingResourcePatternResolver fails to resolve resources from JAR located in path with '#' on JDK 11+ #26104
  • @Transactional causes casting error for suspending function on Spring MVC #26092
  • UrlPathHelper#removeJsessionid doesn't remove the jsessionid from the URL #26079
  • NamedParameterJdbcTemplate.batchUpdate does not individually apply the SQL type from each SqlParameterSource argument #26071
  • Missing error status handling for toEntityFlux methods in WebClient #26069
  • DataBufferUtils#join may release a DataBuffer more than necessary #26060
  • FlightRecorderApplicationStartup exception on processing Http Request #26057
  • WebMvc.fn: ServerResponse.async does not handle exceptions as expected #25931
  • Non-compliant Content-Type header for multipart media types #25885
  • ResponseEntity Exception Handling Issues #25490

📔 Documentation

  • Clarify intended advice execution behavior in Spring version 5.2.7+ #26202
  • DateTimeFormat ISO.DATE_TIME javadoc contains misleading default note #26134
  • Spring EntityManager proxy is incompatible with Hibernate Search <5.11.6 (FullTextEntityManager instantiation fails with ClassCastException) #26090
  • Null passed in required @RequestParam now fails #26088
  • Mention security consideration in ForwardedHeaderFilter javadoc #26081
  • Add cron expression documentation #26067
  • Update javax.mail reference to jakarta.mail #25855
  • Mechanism to access request bound objects in WebClient filter in servlet env #25710
  • Document that @Transactional does not propagate to new threads #25439

🔨 Dependency Upgrades

  • Upgrade to Kotlin Coroutines 1.4.2 #26226
  • Upgrade to Reactor 2020.0.2 #26176
  • Upgrade to Kotlin 1.4.21 #26132

❤️ Contributors

We'd like to thank all the contributors who worked on this release!