Spring Boot v2.3.0.M4 Release Notes

Release Date: 2020-04-03 // about 4 years ago
  • 🍱 ⭐️ New Features

    • 👍 Allow layertools to work without spring-boot jar #20815
    • 👌 Support layering with the existing flat jar format #20813
    • 👌 Support CNB builder platform API 0.3 #20757
    • ✅ @DataR2dbcTest should trigger Flyway or Liquibase if necessary #20739
    • 🔧 Disable auto-configuration of Hazelcast IMDG when Hazelcast Jet is present #20729
    • 🗄 Deprecate spring.mvc.pathmatch.use-suffix-pattern, spring.mvc.pathmatch.use-registered-suffix-pattern, and spring.mvc.contentnegotiation.favor-path-extension #20687
    • Provide dependency management for Jakarta Xml Soap #20661
    • 🔧 Saml2RelyingPartyAutoConfiguration should configure how AuthnRequests are sent #20584
    • ✂ Remove requirement for the disk space health indicator's path to exist when the app starts #20580
    • ⚡️ Update Gradle's layer configuration DSL to remove the double usage of layers #20563
    • 0️⃣ Combine default application and resources layers into a single layer named application #20562
    • ➕ Add HealthEndpointGroupsRegistry and its Customizer #20554
    • 🔧 Override CloudPlatform auto-detection with configuration property #20553
    • 🔧 Rename "classes" concept to "application" in custom layer configuration #20539
    • 🏗 Use DOCKER_ env vars to locate the Docker daemon when building OCI images #20538
    • 🔧 Configure Couchbase ourselves rather than importing Spring Data's abstract config #20533
    • 👍 Raise the minimum supported version of Gradle 6.x to 6.3 #20532
    • Create a new layer for loader classes #20529
    • Refine layer customization for Maven and Gradle #20526
    • ➕ Add command line option for OCI image name #20520
    • ➕ Add a property for MongoDB replica set name #20391
    • ➕ Add security.protocol to KafkaProperties #20360
    • 🔌 Provide a way to customize layers with the Gradle plugin #20296
    • 🔧 Provide a configuration property for the maximum size of the in-memory buffer used by the reactive Elasticsearch REST client #20205
    • 👌 Support Maven reproducible build feature for repackage #20176
    • 👍 Allow tags to be added to those provided by default for WebMVC and WebFlux #20175
    • 🏗 Use platform API builder image tags for default builder #20171
    • ⬆️ Upgrade to Couchbase Java SDK 3 #19893
    • ➕ Add support for default Cassandra port #19672
    • 👌 Support liveness and readiness state for Kubernetes #19593
    • 👌 Support caching of endpoint responses when the request has a principal #19538
    • ➕ Add 'threads' configuration group for embedded containers #19475
    • 👍 Resource Server autoconfiguration to support both JWT and Opaque tokens #19426
    • 🔧 Use Gradle's configuration avoidance API #18881
    • 👌 Improve handling of host, port, and addresses configuration in RabbitProperties #18830
    • ➕ Add configuration to enable Redis Cluster topology refresh #15630
    • 🔧 Make base path configurable for WebFlux applications #10129

    🍱 🐞 Bug Fixes

    • Cassandra health indicator never reports version attribute #20726
    • ReactiveCassandraHealthIndicator runs a query that fails on some Consistency Levels #20718
    • Liquibase should be able to execute with only spring-jdbc on the classpath #20715
    • CassandraHealthIndicator runs a query that fails on some Consistency Levels #20712
    • 🔒 spring.security.oauth2.resourceserver.jwt.jws-algorithm is ignored when auto-configuring ReactiveJwtDecoder #20694
    • Unresolvable placeholder in the value of spring.datasource.url causes a startup failure even when there is a user-provided DataSource bean #20671
    • @FlywayDataSource does not work in an application that has multiple datasources #20621
    • KafkaAutoConfiguration should back off when a bean of type ConcurrentKafkaListenerContainerFactory is found #20616
    • 🔧 Jwt Decoder signature algorithm configuration is not used in combination with public-key-file #20612
    • Ignore trailing slash should not apply to single character URIs #20600
    • ApplicationHome does not work correctly with paths that contain spaces #20544
    • ✅ server.port should not be set to -1 if the test does not start an embedded web server #16998

    📔 Documentation

    • Clarify the type to which connection-pool-specific spring.datasource properties are bound #20744
    • Document how to initialize a database with R2DBC #20742
    • ⚡️ Update system requirements to reflect support for Java 14 #20699
    • ➕ Add extra detail for Kubernetes probes in reference documentation #20660
    • 📚 @ConstructorBinding example in the reference documentation uses the wrong import for @DefaultValue #20622
    • Document that actuator over HTTP requires Jackson #20619
    • 📚 "Building Docker Images" is incorrectly nested beneath "Kotlin support" in the reference documentation #20608
    • 🔗 Link to correct factory in TomcatReactiveWebServerFactory's javadoc #20590
    • 📇 Recommend configuring compileJava's inputs to include processResources' output when generating configuration metadata #20556
    • ➕ Add package info to javadoc for new packages in spring-boot-loader(-tools) #20516
    • 🔌 Publish javadoc for the Maven Plugin #20127

    ⬆️ 🔨 Dependency Upgrades

    • ⬆️ Upgrade to Spring Integration 5.3.0.M4 #20807
    • 🚀 Upgrade to Spring Kafka 2.4.5.RELEASE #20797
    • 🚀 Upgrade to Spring Batch 4.2.2.RELEASE #20792
    • ⬆️ Upgrade to Tomcat 9.0.33 #20789
    • 🚀 Upgrade to Spring Security 5.3.1.RELEASE #20788
    • ⬆️ Upgrade to SendGrid 4.4.6 #20787
    • ⬆️ Upgrade to RxJava2 2.2.19 #20786
    • ⬆️ Upgrade to QueryDSL 4.3.1 #20785
    • ⬆️ Upgrade to Postgresql 42.2.12 #20784
    • ⬆️ Upgrade to Netty tcNative 2.0.30.Final #20783
    • ⬆️ Upgrade to Netty 4.1.48.Final #20782
    • ⬆️ Upgrade to Neo4j OGM 3.2.10 #20781
    • ⬆️ Upgrade to MongoDB 4.0.1 #20780
    • ⬆️ Upgrade to Mockito 3.3.3 #20779
    • ⬆️ Upgrade to MIMEPull 1.9.13 #20778
    • ⬆️ Upgrade to Micrometer 1.3.7 #20777
    • ⬆️ Upgrade to Maven Javadoc Plugin 3.2.0 #20776
    • ⬆️ Upgrade to MariaDB 2.6.0 #20775
    • ⬆️ Upgrade to Liquibase 3.8.8 #20774
    • ⬆️ Upgrade to Kotlin Coroutines 1.3.5 #20773
    • ⬆️ Upgrade to JUnit Jupiter 5.6.1 #20772
    • ⬆️ Upgrade to Johnzon 1.2.4 #20771
    • ⬆️ Upgrade to Janino 3.1.2 #20770
    • ⬆️ Upgrade to Infinispan 10.1.5.Final #20769
    • ⬆️ Upgrade to Hibernate 5.4.13.Final #20768
    • ⬆️ Upgrade to Flyway 6.3.2 #20767
    • ⬆️ Upgrade to Elasticsearch 7.6.2 #20766
    • ⬆️ Upgrade to Commons Lang3 3.10 #20765
    • ⬆️ Upgrade to Cassandra Driver 4.5.1 #20764
    • ⬆️ Upgrade to Byte Buddy 1.10.9 #20763
    • ⬆️ Upgrade to AppEngine SDK 1.9.79 #20762
    • ⬆️ Upgrade to ActiveMQ 5.15.12 #20761
    • ⬆️ Upgrade to Spring HATEOAS 1.1.0.M3 #20751
    • ⬆️ Upgrade to Spring Data Neumann-RC1 #20748
    • ⬆️ Upgrade to Kotlin 1.3.71 #20700
    • ⬆️ Upgrade to r2dbc Arabba-SR3 #20674
    • ⬆️ Upgrade to Spring Framework 5.2.5 #20572
    • ⬆️ Upgrade to Reactor Dysprosium-SR6 #20570
    • ⬆️ Upgrade to Spring Session Dragonfruit-RC2 #20490

    🍱 ❤️ Contributors

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