Spring/spring-boot: Release v2.3.0.RC1

Name: spring-boot

Owner: Spring

Release: v2.3.0.RC1

Released: 2020-05-01

License: Apache-2.0

Release Assets:

⭐ New Features

  • Add InputStreamSourceToByteArrayConverter #21285
  • Restrict wildcard pattern support for configuration files #21217
  • Provide a property to disable configuration of the default servlet #21214
  • Allow project dependencies to be assigned to layers by their coordinates #21207
  • Throw exception if spring.config.location uses classpath*: #21175
  • Best effort support for Hazelcast 4 #21169
  • Create ReactorNettyHttpClientMapper for configuring HttpClient #21135
  • Avoid recompiling pattern in Handler#canonicalize #21103
  • Provide an RSocketMessageHandlerCustomizer to allow customizing of the RSocketMessageHandler #21081
  • Harmonize Service Level Agreement to Service Level Objectives #21076
  • Fail operations when JarFile is closed #21072
  • Improve property name in thrown Micrometer ValidationException #21069
  • Improve compatibility of launch script by replacing use of seq with a bash native loop #21068
  • Change default builder image from cloudfoundry/cnb to Paketo #21066
  • Add dependency management for the Wavefront SDK #21065
  • Support square bracket notation profiles properties #21006
  • Improve Elasticsearch RestClient customization capabilities #20994
  • Remove deprecated configuration properties #20991
  • Default management endpoint error path should honor server.error.include-* properties #20989
  • Add support for customizing Spring Session's cookie serializer #20961
  • Add support for NewRelicClientProvider #20908
  • Remove plugin management for exec-maven-plugin #20883
  • Use YAML compatible classpath.idx format #20861
  • Use a more compact layers.idx format #20860
  • Ensure empty layers are written to the index file #20858
  • Harmonize naming of Elasticsearch auto-configuration classes #20857
  • Expose Prometheus#histogramFlavor property #20853
  • Expose Elastic's pipeline and indexDateSeparator properties #20852
  • Expose AppOptics#floorTime property #20850
  • Deprecate PushRegistryConfig#numThreads #20845
  • Migrate ServiceLevelAgreementBoundary from Long to Double #20837
  • Expose Graphite's graphiteTagsEnabled property #20834
  • Tolerate breaking change to IsolationLevel in kafka-clients 2.5 #20811
  • Use WavefrontSender to export metrics to Wavefront #20810
  • Allow easy activation of ISO-by-default date and time binding for Spring MVC #20579
  • Disable error message on default error page unless explicitly enabled #20505
  • Enable transaction auto-configuration when using @DataMongoTest and there is a MongoTransactionManager bean #20182
  • Rework ErrorController now that getErrorPath() is unused and server.error.path must be used to configure the error path #19844
  • Allow to configure Cassandra's request throttling #19674
  • Provide a condition for detecting war deployments #19421
  • Allow @AutoConfigurationPackage to specify the base packages that should be registered #19023
  • Help users to register filters that require error or async dispatch with the correct dispatcher types #18953
  • Enable users to provide custom time and datetime formats for MVC and WebFlux type conversion #18772
  • Improve handling of cancelled requests when publishing WebClient metrics #18444
  • Autoconfigure ReactiveGridFsTemplate with MongoProperties.getGridFsDatabase() #18284
  • Automatically create a developmentOnly configuration for use with DevTools #16599

🪲 Bug Fixes

  • Hitting Readiness and Liveness endpoints throws NPE #21211
  • JarFiles are being left open #21127
  • Building a layered jar results in deprecation warnings as some configurations will no longer be resolvable in Gradle 7 #21112
  • PortInUseException can be thrown when server address is wrong #21105
  • Test classes annotated with @SpringBootTest with different args attributes share a context when they should not #21102
  • MockitoPostProcessor can trigger early initialization of factory beans #21090
  • Fat jars cause classloading problems with JDK11 and Security Manager #21074
  • WelcomePageHandlerMapping does not honor CORS #21071
  • PortInUseException thrown when Netty does not have the right to use configured port #21053
  • spring.config.additional-location is ignored when spring.config.location is configured #21050
  • Nested object is not initialized if no matching property is defined with constructor binding #21049
  • ConditionalOnAvailableEndpoint does not deal with dashed IDs #21047
  • Homebrew and Scoop definitions for non-snapshot builds link to wrong repository on repo.spring.io #21034
  • Endpoint exposure patterns do not work with dashed IDs #21023
  • KafkaClientMetrics is applied to a newly created producer rather than an existing one #21008
  • Embedded database initial failed for setting empty spring.database.url #21004
  • UndertowCompressionConfigurer fails on invalid Media Types #20957
  • Ensure consistent and correct attributes on files added to fat archives #20927
  • Default for spring.kafka.listener.missing-topics-fatal is no longer aligned with Spring Kafka's default #20919
  • Use of new DefaultResourceLoader() is dangerous as it captures the thread context classloader at the time of the call #20900
  • Application fails to start due to missing WebFluxProperties bean when using @EnableWebFlux #20891
  • Properties files in subdirectories are not loaded when one file is empty #20873
  • Layer index file is malformed when file in jar contains a space #20827
  • @SpringBootTest does not work when @ActiveProfiles contains a comma #19537

📔 Documentation

  • Enhance Database initialization how to guide #21119
  • Add "Health as Gauge" how-to documentation #21092
  • Fix link to R2DBC Query in docs #21079
  • Maven plugin examples for build-image command line properties are incorrect #21078
  • Relocate section on configuring DevTools' file system watcher as it isn't specific to remote applications #21075
  • Fix anchors in links to Maven and Gradle plugin docs #21033
  • Links to CLI binaries are broken for non-snapshot builds #21030
  • Document relaxed binding from environment variables #21028
  • Document devtool property file profile restrictions #21026
  • Documentation: Dockerfile example does not match documented default jar layers #21020
  • Deprecate getters and setters for deprecated configuration properties consistently #21017
  • Add reference to gRPC starter #20966
  • Make it more obvious that Jolokia does not work with a WebFlux app #20964
  • Add reference to Mule 4 starter #20915
  • Added package-info to org.springframework.boot.buildpack.platform.docker.ssl #20913
  • Fix typo in Adding Active Profiles #20909
  • Update documentation about endpoint enablement to reflect behaviour of @ConditionalOnAvailableEndpoint #20897
  • Don't use monospacing in documentation headings #20875
  • Document fat-jar index files #20859
  • Add reference to XChange starter #20830
  • Name generated PDF documentation files after the subproject #20829
  • Deprecate support for Bitronix #20823
  • Add reference to quickfixj spring boot starter #20819
  • Link to the Maven Plugin's documentation is broken #20818
  • Add formatting instructions for the buildSrc module #20806
  • Document how to initialize the database when using R2DBC #20524
  • Document how to build images when behind an HTTP proxy #19984
  • Move Maven-specific content in reference guide to dedicated documentation #19165

🔨 Dependency Upgrades

  • Upgrade to Undertow 2.1.0.Final #21278
  • Upgrade to SAAJ Impl 1.5.2 #21277
  • Upgrade to Jetty EL 8.5.54 #21276
  • Upgrade to Hazelcast 3.12.7 #21275
  • Upgrade to Byte Buddy 1.10.10 #21274
  • Upgrade to Flyway 6.4.1 #21269
  • Upgrade to WebJars Locator Core 0.45 #21255
  • Upgrade to Tomcat 9.0.34 #21254
  • Upgrade to Spring WS 3.0.9.RELEASE #21253
  • Upgrade to SendGrid 4.4.8 #21252
  • Upgrade to Selenium HtmlUnit 2.39.0 #21251
  • Upgrade to Rabbit AMQP Client 5.9.0 #21250
  • Upgrade to OkHttp3 3.14.8 #21249
  • Upgrade to Netty 4.1.49.Final #21248
  • Upgrade to Neo4j OGM 3.2.11 #21247
  • Upgrade to MySQL 8.0.20 #21246
  • Upgrade to MongoDB 4.0.2 #21245
  • Upgrade to Log4j2 2.13.2 #21244
  • Upgrade to Liquibase 3.8.9 #21243
  • Upgrade to Kotlin 1.3.72 #21242
  • Upgrade to JUnit Jupiter 5.6.2 #21241
  • Upgrade to Jetty 9.4.28.v20200408 #21240
  • Upgrade to Jackson Bom 2.11.0 #21239
  • Upgrade to InfluxDB Java 2.18 #21238
  • Upgrade to Infinispan 10.1.6.Final #21237
  • Upgrade to HtmlUnit 2.39.1 #21236
  • Upgrade to HikariCP 3.4.3 #21235
  • Upgrade to Hibernate Validator 6.1.4.Final #21234
  • Upgrade to Hibernate 5.4.14.Final #21233
  • Upgrade to Groovy 2.5.11 #21232
  • Upgrade to Glassfish JAXB 2.3.3 #21231
  • Upgrade to Flatten Maven Plugin 1.2.2 #21229
  • Upgrade to Dropwizard Metrics 4.1.6 #21228
  • Upgrade to Couchbase Client 3.0.3 #21227
  • Upgrade to Cassandra Driver 4.6.0 #21226
  • Upgrade to Caffeine 2.8.2 #21225
  • Upgrade to Artemis 2.12.0 #21224
  • Upgrade to AppEngine SDK 1.9.80 #21223
  • Upgrade to Spring HATEOAS 1.1.0.RC1 #21210
  • Upgrade to RSocket 1.0.0-RC7 #21208
  • Upgrade to Apache Solr 8.5.1 #21206
  • Upgrade to Lettuce 5.3.0.RELEASE #21096
  • Upgrade to Kafka 2.5.0 #21032
  • Upgrade to Spring Kafka 2.5.0.RC1 #20953
  • Upgrade to Spring Integration 5.3.0.RC1 #20951
  • Upgrade to Spring Data Neumann-RC2 #20949
  • Upgrade to Spring AMQP 2.2.6 #20947
  • Upgrade to Spring Framework 5.2.6 #20945
  • Upgrade to Reactor Bom Dysprosium-SR7 #20943
  • Upgrade to Testcontainers 1.14.0 #20936
  • Upgrade to Micrometer 1.5.0 #20833

:heart: Contributors

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

To top