github spring-projects/spring-framework v5.0.3.RELEASE
5.0.3 Release

latest releases: v6.2.0, v6.1.15, v6.2.0-RC3...
5 years ago

⭐ New Features

  • Removed unnecessary cast to "int" in SimpleStreamingClientHttpRequest [SPR-16404] #20950
  • DataBufferUtils.read should not take input stream/channel as parameter [SPR-16403] #20949
  • Use ArrayList instead of LinkedList for known size [SPR-16378] #20924
  • Support Custom Headers for Multipart Async Data [SPR-16376] #20922
  • ServerResponse should allow the usage of unassigned HTTP status codes [SPR-16366] #20913
  • SqlParameterSource needs method for extracting parameter names [SPR-16361] #20908
  • ComponentScanBeanDefinitionParser::parseTypeFilters should not fail on ClassNotFoundException [SPR-16356] #20903
  • Set 304 status on ServerResponse when ETag/LastModified match [SPR-16348] #20895
  • JsonPathExpectationsHelper doesn't offer a way to distinguish between field not existing and an explicit null [SPR-16339] #20886
  • Make RestOperations extensions parameters nullability consistent with Java API [SPR-16328] #20875
  • Addition of overloading methods to addPathPatterns and excludePathPatterns in InterceptorRegistration class [SPR-16324] #20871
  • CachedIntrospectionResults should use BeanInfoFactory when introspecting implemented interfaces [SPR-16322] #20869
  • Limit thread synchronization in AbstractRequestExpectationManager [SPR-16319] #20866
  • Support Publishers for multipart data in BodyInserters [SPR-16307] #20854
  • Provide access to ApplicationContext via ServerWebExchange [SPR-16298] #20845
  • ResourceUrlProvider.getForLookupPath fails if path contains double slashes [SPR-16296] #20843
  • Improve performance of some string operations [SPR-16293] #20840
  • Improve HeaderAssertions for specific tests [SPR-16285] #20832
  • Allow to inject enum with package visibility [SPR-16284] #20831
  • Provide methods to add query string parameters to MockServerHttpRequest [SPR-16280] #20827
  • config.enableSimpleBroker("/topic", "/queue"); Should be config.enableSimpleBroker("/topic", "queue"); [SPR-16275] #20822
  • Clarify Kotlin reified type parameter extensions documentation about type erasure [SPR-16273] #20820
  • Javadocs for @RequestMapping not so useful in 5.0 [SPR-16266] #20813
  • Reduce access on user in SimpleBrokerMessageHandler.handleMessageInternal [SPR-16264] #20811
  • Byte related decoders should implement decodeToMono [SPR-16253] #20800
  • Support load time weaving in Liberty without the agent [SPR-16248] #20795
  • Controller cannot be found if absolute URI is given in HTTP request [SPR-16243] #20790
  • Creating a SimpleJdbcInsert from a NamedParameterJdbcTemplate [SPR-16241] #20788
  • Remove synchronization from ResourceBundleMessageSource [SPR-16235] #20782
  • HttpWebHandlerAdapter should log helpful information when response is committed [SPR-16231] #20778
  • UriTemplate.matches boolean has greedy behavior at the end of a pattern [SPR-16169] #20717
  • CORS combine - override specific host defined in global conf with * in controller/method [SPR-15772] #20327

🪲 Bug Fixes

  • Support array of scalar values in Jackson2Tokenizer [SPR-16407] #20953
  • MultipartHttpMessageWriter should not subscribe to Publisher multipart data [SPR-16402] #20948
  • EclipseLink does not log SQL parameters when using showSql [SPR-16383] #20929
  • TestExecutionListener class not found logged at INFO [SPR-16369] #20916
  • Using DataBuffer::write results in IndexOutOfBoundsException [SPR-16365] #20912
  • JMS Producers are cached even when the destination is a temporary queue causing a memory leak [SPR-16353] #20900
  • Use of CompositeByteBuf in NettyDataBuffer results in IllegalReferenceCountException [SPR-16351] #20898
  • Multi-part upload of a byte[] with WebTestClient is Base64 encoded (?) and assigned a JSON content type [SPR-16350] #20897
  • AbstractAutoProxyCreator throws IllegalStateException when using Apache Orchestra conversations [SPR-16347] #20894
  • DefaultLifecycleProcessor throws BeanNotOfRequiredType for null beans (cause of NullBean instance cannot be converted) [SPR-16343] #20890
  • @JmsListener concurrency property is ignored if DefaultJmsListenerContainerFactory#concurrency is set [SPR-16338] #20885
  • PropertySourcesPlaceholderConfigurer can not ignore resource if not found [SPR-16334] #20881
  • Large transaction timeout value (Integer.MAX_VALUE for example) results in transaction expiring immediately after starting. [SPR-16316] #20863
  • MockHttpServletResponse.setLocale(Locale) should set HttpHeaders.CONTENT_LANGUAGE header [SPR-16311] #20858
  • Access-Control-Allow-Origin header returns wrong value using SockJS [SPR-16304] #20851
  • Programmatic creation of caching proxies using CacheProxyFactoryBean does not work [SPR-16295] #20842
  • AbstractReactiveWebInitializer does not property initialize ApplicationContext [SPR-16290] #20837
  • BeanCreationException when using c-namespace, Kotlin class with default constructor and annotation configuration [SPR-16289] #20836
  • Ambiguous mapping error when using generic interface [SPR-16288] #20835
  • Unnecessary file system access in SimpleMetadataReaderFactory.getMetadataReader [SPR-16281] #20828
  • BeanUtils.isSimpleValueType() returns false for enums overriding a method [SPR-16278] #20825
  • Embedded cglib 3.2.5 not closing input streams that read class files [SPR-16267] #20814
  • Stomp Broker Relay may ignore configured destination prefixes [SPR-16265] #20812
  • spring-web CORS requires X-Forwarded-Port [SPR-16262] #20809
  • NPE in FunctionReference due to race condition in SpelExpression.getValue() [SPR-16255] #20802
  • Exception when receiving Long collection in MessageMapping [SPR-16252] #20799
  • Breaking change in MVC: Accept handling is now more strict [SPR-16251] #20798
  • null FactoryBean results in BeanCreationException [SPR-16250] #20797
  • Content-type not set by default with the functional Web API [SPR-16247] #20794
  • Reactive WebClient corrupts uploaded files [SPR-16246] #20793
  • Trying to rewrite request URI in a WebFilter fails on missing client TLS certificate [SPR-16244] #20791
  • DispatcherHandler invoke wrong method when discriminating request with params [SPR-16210] #20758
  • Combining @Retryable and @Scheduled/@JmsListener doesn't work [SPR-16196] #20744
  • Support top-level scalar values in Jackson2Tokenizer [SPR-16166] #20714
  • WebFlux controller successfully completes response if Flux emits error [SPR-16051] #20600
  • Error in RestTemplate when setting the same HTTP header through ClientHttpRequestInterceptor and HttpEntity [SPR-15066] #19632

📔 Documentation

  • [doc] Update documentation on WebAsyncManager thread pool [SPR-16397] #20943
  • Improve WebFlux.fn Java configuration documentation [SPR-16360] #20907
  • Documentation about Spring Framework BOM missing for Spring Framework 5.0 [SPR-16317] #20864
  • Incorrect SpEL syntax in reference documentation [SPR-16315] #20862
  • Typo in example code in spring reactive reference document [SPR-16300] #20847
  • Document WebFlux rendering of String and Flux with JSON [SPR-16260] #20807
  • [docs] Complete WebFlux annotation programming model parts [SPR-16040] #20589

Don't miss a new spring-framework release

NewReleases is sending notifications on new releases.