Bug
- [SPR-14603] - Invalid WARN when returning a BeanDefinitionRegistryPostProcessor from within a @Configuration class
- [SPR-15584] - High percent of failures (timeout) under load from server-side WebClient requests
- [SPR-15790] - WebClient.post() not sending complete Flux on Windows
- [SPR-15802] - Logs fill with broken pipe when using SockJS
- [SPR-15810] - TemplateAwareExpressionParser.parseExpression does not accept null ParserContext anymore
- [SPR-15816] - AbstractCodecConfigurer creates Jackson Encoders/Decoders each time when getters are called
- [SPR-15820] - [Kotlin] Warning message about private final methods.
- [SPR-15822] - Setting user header on CONNECT message stopped working
- [SPR-15823] - AnnotationAwareOrderComparator doesn't handle null values anymore
- [SPR-15828] - Parameter values are null when making a PUT request
- [SPR-15834] - Regression after URI template support added to MockMvcResultMatchers
- [SPR-15838] - SimpleApplicationEventMulticaster does not deal with lambda-defined listeners when ErrorHandler is set
- [SPR-15839] - SpringValidatorAdapter fails to retrieve value for Bean Validation 2.0's "<list element>" literal
- [SPR-15845] - FileSystemUtils.copyRecursively no longer replaces existing files
- [SPR-15846] - FileSystemUtils.deleteRecursively always returns false
- [SPR-15851] - Kotlin bean instantiation regression with default declared constructor
- [SPR-15860] - Reactive GET request query-params are not decoded correctly. + sign must be space.
- [SPR-15866] - Jackson2JsonEncoder and Jackson2JsonDecoder should use provided mime types
- [SPR-15867] - Should call getNativeResponse() instead of getNativeRequest() in FrameworkServlet
- [SPR-15869] - Fix overridden methods nullability
- [SPR-15875] - DefaultWebSessionManager requires DefaultWebSession
- [SPR-15890] - no dependencyManagement in spring-framework-bom
- [SPR-15895] - SimpleAsyncTaskExecutor not respect ConcurrencyThrottleSupport.NO_CONCURRENCY limit
- [SPR-15900] - StringIndexOutOfBoundsException from RestTemplate.doExecute IOException handler when query string is empty
- [SPR-15907] - ExceptionHandlerMethodResolver loses all handler methods
- [SPR-15910] - WebFlux incorrectly falls back to application/json for method that produces application/octet-stream and returns ResponseEntity<Object>
- [SPR-15916] - Error on type argument constraint validation failure
- [SPR-15932] - spring-framework-bom lists unpublished spring-build-src module
- [SPR-15937] - StompDecoder Logs Null Session IDs for Heartbeats
New Feature
- [SPR-15789] - Support range requests for Spring MVC request mapped methods that return a Resource
Task
- [SPR-15548] - Upgrade to Jackson 2.9 GA
- [SPR-15549] - Upgrade to Reactor 3.1 RC1 (including Reactive Streams 1.0.1)
- [SPR-15659] - Add documentation for Kotlin support
- [SPR-15667] - Upgrade to Gradle 4.1 for clean JDK 9 build compatibility
- [SPR-15737] - Upgrade to JUnit 5.0 GA
- [SPR-15798] - Make DataBufferUtilsTests#writeAsynchronousFileChannel reliable
- [SPR-15808] - Compatibility with Hibernate Validator 6.0 GA
- [SPR-15814] - Upgrade to Kotlin 1.1.4
- [SPR-15837] - Upgrade to JUnit Jupiter 5.0 RC2
- [SPR-15848] - Upgrade to JUnit Jupiter 5.0 RC3
- [SPR-15862] - Fix Eclipse support in Gradle build
- [SPR-15863] - Token-based WebSocket Authentication Documentation Inaccuracy
- [SPR-15870] - Compatibility with EclipseLink 2.7
- [SPR-15872] - Typo in matrix variable example
- [SPR-15879] - Upgrade to Servlet API 4.0 for MVC (PushBuilder and Servlet mocks)
- [SPR-15885] - Reorganize Gradle build
- [SPR-15888] - Build failing with Sonar
- [SPR-15906] - CONTRIBUTING-DOCUMENTATION.adoc still refers to the reference gradle task
- [SPR-15912] - Is "bodyToEntity" reference incorrect in the org.springframework.web.reactive.function.client.WebClient.RequestHeadersSpec<S> Javadoc?
- [SPR-15930] - Ensure spring-jcl is used in the generated Eclipse classpath instead of commons-logging
Improvement
- [SPR-15532] - Consistent overriding for all variants of init/destroy method inheritance
- [SPR-15541] - Leveraging kotlin-reflect to determine interface method parameters
- [SPR-15542] - BindingResult support for constructor argument mismatch on immutable data object
- [SPR-15764] - ExchangeFilterFunctions Explicit Model For Basic Authentication Credentials
- [SPR-15795] - Media type fails to match types with multiple '+' characters
- [SPR-15815] - Avoid requiring it lambda parameter in Kotlin bean DSL
- [SPR-15817] - Add ParameterizedTypeReference method variants to ServerRequest/ServerResponse
- [SPR-15818] - Use ParameterizedTypeReference instead of Class in Kotlin extensions
- [SPR-15819] - URI variables with MockRestRequestMatchers's requestTo
- [SPR-15824] - WebClientException should allow access to status code of the response
- [SPR-15825] - Consistent logging in Environment and PropertySource implementations
- [SPR-15829] - Autowire contract is not honored in cases where FactoryBean or @Bean return null
- [SPR-15831] - MockMvc doesn't honor params in RequestMapping when no equal sign
- [SPR-15841] - BeanDefinitionBuilder method arguments not annotated with @Nullable
- [SPR-15847] - Add support for Kotlin autowired constructor with optional parameters
- [SPR-15852] - WebAsyncManager should cancel task thread on timeout
- [SPR-15858] - @Lazy collection of optional elements should not crash when no candidates are found
- [SPR-15871] - Immutable object constructor arguments not considering WebDataBinder's FIELD_MARKER_PREFIX
- [SPR-15876] - Provide hook in DefaultWebSessionManager to support creating custom WebSession implementation
- [SPR-15887] - WebFlux @MVC Controllers do not support @SessionAttributes. (plus SessionStatus)
- [SPR-15908] - Enable by default HTTP compression support in Reactor WebClient
- [SPR-15914] - WebClient - add option to disable chunked transfer
- [SPR-15917] - Introduce header-based WebSessionIdResolver
- [SPR-15920] - Ensure that WebClient disposes the HTTP client connection once the client response is consumed
- [SPR-15923] - Provide hierarchy traversal support for getBeanNamesForAnnotation
Refactoring
- [SPR-15826] - Remove BodyInserters.fromServerSentEvent variants
- [SPR-15880] - Merge EhCache 3 tests into spring-context-support
- [SPR-15924] - Consider moving ServerHttpResponse encodeUrl / registerUrlEncoder to ServerWebExchange?
Edit/Copy Release Notes
The text area below allows the project release notes to be edited and copied to another document.