Spring Cloud 2020.0.0-M5 (aka Ilford) is Available
On behalf of the community, I am pleased to announce that the Milestone 5 (M5) of the Spring Cloud 2020 Release Train is available today. The release can be found in Spring Milestone repository. You can check out the 2020 release notes for more information.
Notable Changes in the 2020 Release Train
This release requires Spring Boot 2.4.0.
Support for OpenTelemetry was added in Sleuth.
Support for RSocket was added in Bus.
Please see the wiki for a list of all breaking changes in this release train.
See all of the included issues and pull requests at the Github project.
Spring Cloud Bus
Support for RSocket was added via Spring Cloud Function RSocket support. This does not require Spring Cloud Stream.
Spring Cloud Commons
Support was added for retry in reactive Spring Cloud Loadbalancer.
Spring Cloud Config
Submodule support was added to git Environment Repositories.
Spring Cloud Contract
Support for handling empty lists and maps in responses was added.
Spring Cloud Gateway
Token Relay support was migrated from Spring Cloud Security to Gateway. Token refreshing was also added.
Spring Cloud Kubernetes
A new module based on the official Kubernetes Java Client was added.
Spring Cloud Netflix
EurekaHealthCheckHandler
now considers ReactiveHealthIndicator
.
Spring Cloud Openfeign
Adds the ability to configure client to send default headers and query parameters.
Spring Cloud Security
Token Relay support was moved to Spring Cloud Gateway (see above).
Spring Cloud Sleuth
Support for OpenTelemetry was added.
The following modules were updated as part of 2020.0.0-M5:
Module | Version | Issues |
---|---|---|
Spring Cloud Bus | 3.0.0-M5 | (issues) |
Spring Cloud Circuitbreaker | 2.0.0-M5 | (issues) |
Spring Cloud Cli | 3.0.0-M5 | |
Spring Cloud Cloudfoundry | 3.0.0-M5 | |
Spring Cloud Commons | 3.0.0-M5 | (issues) |
Spring Cloud Config | 3.0.0-M5 | (issues) |
Spring Cloud Consul | 3.0.0-M5 | |
Spring Cloud Contract | 3.0.0-M5 | (issues) |
Spring Cloud Gateway | 3.0.0-M5 | |
Spring Cloud Kubernetes | 2.0.0-M5 | (issues) |
Spring Cloud Netflix | 3.0.0-M5 | (issues) |
Spring Cloud Openfeign | 3.0.0-M5 | (issues) |
Spring Cloud Security | 3.0.0-M5 | |
Spring Cloud Sleuth | 3.0.0-M5 | (issues) |
Spring Cloud Starter Build | 2020.0.0-M5 | |
Spring Cloud Vault | 3.0.0-M5 | |
Spring Cloud Zookeeper | 3.0.0-M5 |
As always, we welcome feedback on GitHub, on Gitter, on Stack Overflow, or on Twitter.
To get started with Maven with a BOM (dependency management only):
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2020.0.0-M5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
...
</dependencies>
or with Gradle:
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
}
}
repositories {
maven {
url 'https://repo.spring.io/milestone'
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:2020.0.0-M5'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}