Spring Cloud Greenwich Release – New Features, EOL Alerts, and Migration Tips
Spring Cloud Greenwich.RELEASE is now available via Maven Central, introducing Java 11 compatibility, new projects like Spring Cloud GCP and Kubernetes, while announcing EOL for Edgware and Finchley, moving many Netflix modules into maintenance mode, and providing extensive updates across Sleuth, Config, Vault, OpenFeign, and other components with migration guidance.
Spring Cloud Greenwich.RELEASE is officially released and can be obtained from Spring Milestone and Maven Central. See the Greenwich release notes for more information.
EOL Reminder
Edgware version will reach end‑of‑life on 1 August 2019. See the Spring Cloud Edgware EOL announcement for details.
Spring Cloud Finchley is the current main release aligned with Spring Boot 2.0.x; it will reach EOL when the corresponding Spring Boot version does, with a blog post to announce the exact date.
Spring Cloud Greenwich is a minor release that will be supported until the Spring Boot 2.x branch ends.
Notable Updates in Greenwich
All related projects are now compatible with Java 11.
New Projects
Greenwich includes two new projects: Spring Cloud GCP and Spring Cloud Kubernetes. The former provides integration support for Google Cloud Platform (GCP) services, and the latter offers Kubernetes integration.
Spring Cloud Netflix projects enter maintenance mode
Recently, Netflix announced that Hystrix is entering maintenance mode. Since 2016, Ribbon has also been in a similar state. Although Hystrix and Ribbon are now in maintenance mode, they are still widely deployed on Netflix.
Hystrix Dashboard and Turbine have been replaced by Atlas. The last commits to these projects were 2 and 4 years ago respectively. Zuul 1 and Archaius 1 have been superseded by later incompatible versions.
The following Spring Cloud Netflix modules and their starter dependencies will enter maintenance mode:
spring-cloud-netflix-archaius
spring-cloud-netflix-hystrix-contract
spring-cloud-netflix-hystrix-dashboard
spring-cloud-netflix-hystrix-stream
spring-cloud-netflix-hystrix
spring-cloud-netflix-ribbon
spring-cloud-netflix-turbine-stream
spring-cloud-netflix-turbine
spring-cloud-netflix-zuul
What is maintenance mode?
Placing a module in maintenance mode means the Spring Cloud team will no longer add new features to it. Critical bugs and security issues will still be fixed, and small community pull requests will be reviewed.
We intend to continue supporting these modules for at least one year from the official Greenwich release.
Alternative projects
We recommend replacing the functionality of these modules with alternative solutions.
See the follow‑up blog post on Spring Cloud Loadbalancer and its integration with the new Netflix Concurrency Limits project.
Spring Cloud Sleuth
Upgrade to the latest Brave library
Performance improvements for WebFlux and Reactor integration
Support for gRPC instrumentation
Added support for multiple span reporting
Added rate‑limiting sampler support
Spring Cloud GCP
See the Google products and services documentation for details.
Spring Cloud Netflix
Upgrade Ribbon and Eureka versions
Add new field
ServiceInstance.instanceIdSpring Cloud Consul
Add new field
ServiceInstance.instanceIdSpring Cloud Gateway
Add filter that can rewrite response headers
Support for multiple paths and hosts in route predicates and customizable HTTP status codes in certain cases
Spring Cloud Function
Support for Kotlin
New programming model for Azure Functions
Optional automatic export of Supplier when the Web adapter starts
Functional Bean registration
More introductions
Spring Cloud Stream
See the release notes
Spring Cloud Zookeeper
Add new field
ServiceInstance.instanceIdSpring Cloud Task
See the release notes
Spring Cloud Kubernetes
ServiceInstance metadata can now be configured from Kubernetes Labels, Annotations, and Ports
KubernetesDiscoveryClient enhanced during bootstrap
Added module to detect Istio presence
Spring Cloud Contract
Added support for XML payloads
Allow contracts to be dumped as a generic representation
Added WebTestClient support for testing contracts with WebFlux
Improved Pact integration
Added Camel support
Added JUnit 5 support
Upgraded WireMock to the latest version
Added support for binary payloads
Added support for the latest version in Git repositories
Allowed explicit type generation for regular expressions
Spring Cloud Security
Spring Cloud Gateway filters now support OAuth2. A simple demo program is provided.
Spring Cloud Config
Added EnvironmentRepository to support CredHub backend service
Spring Cloud Vault
Added support for Google Cloud and Azure authentication
Upgraded to Spring Vault 2.1.1
Spring Cloud Openfeign
Support for new annotation @QueryMap Upgraded to OpenFeign 10.1.0
Spring Cloud Commons
ServiceInstance interface added instanceId Added ReactiveLoadBalancer interface, implemented with Reactor
The following modules were updated as part of the Greenwich.RELEASE:
To use the BOM with Maven (dependency management only):
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.RELEASE</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>If using Gradle:
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.2.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Greenwich.RELEASE'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
...
}Source: https://spring.io/blog/2019/01/23/spring-cloud-greenwich-release-is-now-available Author: Ryan Baxter Compiled by: 春之雨
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Programmer DD
A tinkering programmer and author of "Spring Cloud Microservices in Action"
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
