Skip to content

Spring Cloud 2020.0 Release Notes

Spencer Gibb edited this page Nov 18, 2020 · 65 revisions

Breaking changes

  • As announced, the following modules have been removed from spring-cloud-netflix:

    • spring-cloud-netflix-archaius
    • spring-cloud-netflix-concurrency-limits
    • spring-cloud-netflix-core
    • spring-cloud-netflix-dependencies
    • spring-cloud-netflix-hystrix
    • spring-cloud-netflix-hystrix-contract
    • spring-cloud-netflix-hystrix-dashboard
    • spring-cloud-netflix-hystrix-stream
    • spring-cloud-netflix-ribbon
    • spring-cloud-netflix-sidecar
    • spring-cloud-netflix-turbine
    • spring-cloud-netflix-turbine-stream
    • spring-cloud-netflix-zuul
    • spring-cloud-starter-netflix-archaius
    • spring-cloud-starter-netflix-hystrix
    • spring-cloud-starter-netflix-hystrix-dashboard
    • spring-cloud-starter-netflix-ribbon
    • spring-cloud-starter-netflix-turbine
    • spring-cloud-starter-netflix-turbine-stream
    • spring-cloud-starter-netflix-zuul
    • Support for ribbon, hystrix and zuul was removed across the release train projects.
  • Bootstrap, provided by spring-cloud-commons, is no longer enabled by default. If your project requires it, it can be re-enabled by properties or by a new starter.

    • To re-enable by properties set spring.cloud.bootstrap.enabled=true or spring.config.use-legacy-processing=true. These need to be set as an environment variable, java system property or a command line argument.
    • The other option is to include the new spring-cloud-starter-bootstrap.
  • Support has been added for the new Spring Boot spring.config.import syntax for Config Server, Consul, Zookeeper and Vault. The existing properties to configure the different services are still supported but need to be put in application.properties or application.yml.

    • spring.config.import=configserver:
    • spring.config.import=consul:
    • spring.config.import=zookeeper:
    • spring.config.import=vault:
  • Previously the property to disable the Spring Cloud Config Client Health Indicator was health.config.enabled=false. It is now management.health.config.enabled=false following the Spring Boot convention.

  • The spring-cloud-gateway-core module was moved to spring-cloud-gateway-server. If you are using spring-cloud-gateway-starter this will not be an issue.

  • The implementation of spring-cloud-bus was migrated to use spring-cloud-function instead of the legacy annotation-driven model. This should have minimal effect on users.

  • spring-cloud-stream is now an optional dependency of spring-cloud-bus. If you are using a binder other than rabbitmq or kafka you will need to inclue the new spring-cloud-starter-bus-stream.

  • Actuator endpoints with invalid characters (dashes) have been update to remove them:

    • bus-env is now busenv
    • bus-refresh is now busrefresh
    • service-registry is now serviceregistry
  • In Spring Cloud Config, the endpoints from the resource API that used the useDefaultLabel query parameter have been removed.

Spring Cloud Kubernetes

Alternative Kubernetes Client

  • Some classes from spring-cloud-kubernetes-core have been moved to spring-cloud-kubernetes-commons PR 649

Configuration Change Listener

  • Classes related to event based and polling configuration change listeners have now been split up PR 644

Spring Cloud Sleuth

Most notable breaking changes:

  • Introduces abstraction over tracers PR 1757
    • You can use Spring Cloud Sleuth's abstraction over Span's lifecycle Check the docs
    • You can use Brave or OpenTelemetry directly
  • Enable reactor manual instrumentation when in gateway breaking change enhancement Issue 1710
  • Remove the legacy Sleuth keys, span naming breaking change Issue 1564
  • Remove the legacy MDC entries and remain with the Brave MDC ones only breaking change enhancement Issue 1221

To see the whole list check this Github page and search for 3.0.0 milestones.

2020.0.0-M5

All Issues

2020-11-17

  • Spring Cloud Consul 3.0.0-M5
  • Spring Cloud Gateway 3.0.0-M5
  • Spring Cloud Zookeeper 3.0.0-M5
  • Spring Cloud Sleuth 3.0.0-M5 (issues)
  • Spring Cloud Cloudfoundry 3.0.0-M5
  • Spring Cloud Config 3.0.0-M5 (issues)
  • Spring Cloud Kubernetes 2.0.0-M5 (issues)
  • Spring Cloud Netflix 3.0.0-M5 (issues)
  • Spring Cloud Starter Build 2020.0.0-M5
  • Spring Cloud Circuitbreaker 2.0.0-M5 (issues)
  • Spring Cloud Contract 3.0.0-M5 (issues)
  • Spring Cloud Security 3.0.0-M5
  • Spring Cloud Bus 3.0.0-M5 (issues)
  • Spring Cloud Cli 3.0.0-M5
  • Spring Cloud Openfeign 3.0.0-M5 (issues)
  • Spring Cloud Vault 3.0.0-M5
  • Spring Cloud Commons 3.0.0-M5 (issues)

2020.0.0-M4

All Issues

2020-10-05

  • Spring Cloud Sleuth 3.0.0-M4 (issues)
  • Spring Cloud Consul 3.0.0-M4 (issues)
  • Spring Cloud Config 3.0.0-M4 (issues)
  • Spring Cloud Kubernetes 2.0.0-M4 (issues)
  • Spring Cloud Gateway 3.0.0-M4
  • Spring Cloud Circuitbreaker 2.0.0-M4
  • Spring Cloud Contract 3.0.0-M4 (issues)
  • Spring Cloud Starter Build 2020.0.0-M4
  • Spring Cloud Netflix 3.0.0-M4 (issues)
  • Spring Cloud Cloudfoundry 3.0.0-M4
  • Spring Cloud Security 3.0.0-M4
  • Spring Cloud Cli 3.0.0-M4
  • Spring Cloud Bus 3.0.0-M4 (issues)
  • Spring Cloud Zookeeper 3.0.0-M4 (issues)
  • Spring Cloud Commons 3.0.0-M4 (issues)
  • Spring Cloud Openfeign 3.0.0-M4 (issues)
  • Spring Cloud Vault 3.0.0-M4 (issues)

2020.0.0-M3

All Issues

2020-07-23

  • Spring Cloud Sleuth 3.0.0-M3
  • Spring Cloud Kubernetes 2.0.0-M3
  • Spring Cloud Consul 3.0.0-M3
  • Spring Cloud Config 3.0.0-M3 (issues)
  • Spring Cloud Gateway 3.0.0-M3
  • Spring Cloud Starter Build 2020.0.0-M3
  • Spring Cloud Circuitbreaker 2.0.0-M3
  • Spring Cloud Contract 3.0.0-M3 (issues)
  • Spring Cloud Cloudfoundry 3.0.0-M3
  • Spring Cloud Security 3.0.0-M3
  • Spring Cloud Netflix 3.0.0-M3
  • Spring Cloud Cli 3.0.0-M3
  • Spring Cloud Bus 3.0.0-M3
  • Spring Cloud Zookeeper 3.0.0-M3
  • Spring Cloud Commons 3.0.0-M3
  • Spring Cloud Vault 3.0.0-M3
  • Spring Cloud Openfeign 3.0.0-M3

2020.0.0-M2

All Issues

2020-05-29

  • Spring Cloud Netflix 3.0.0-M2
  • Spring Cloud Sleuth 3.0.0-M2
  • Spring Cloud Consul 3.0.0-M2
  • Spring Cloud Kubernetes 2.0.0-M2
  • Spring Cloud Gateway 3.0.0-M2 (issues)
  • Spring Cloud Circuitbreaker 2.0.0-M2
  • Spring Cloud Contract 3.0.0-M2 (issues)
  • Spring Cloud Starter Build 2020.0.0-M2
  • Spring Cloud Config 3.0.0-M2
  • Spring Cloud Build 3.0.0-M2
  • Spring Cloud Cloudfoundry 3.0.0-M2
  • Spring Cloud Security 3.0.0-M2
  • Spring Cloud Bus 3.0.0-M2
  • Spring Cloud Cli 3.0.0-M2
  • Spring Cloud Vault 3.0.0-M2
  • Spring Cloud Zookeeper 3.0.0-M2
  • Spring Cloud Commons 3.0.0-M2
  • Spring Cloud Openfeign 3.0.0-M2

2020.0.0-M1

2020-04-16

  • Spring Cloud Netflix 3.0.0.M1 (issues)
  • Spring Cloud Function 3.1.0.M1
  • Spring Cloud Sleuth 3.0.0.M1 (issues)
  • Spring Cloud Consul 3.0.0.M1 (issues)
  • Spring Cloud Kubernetes 2.0.0.M1
  • Spring Cloud Gateway 3.0.0.M1 (issues)
  • Spring Cloud Circuitbreaker 2.0.0.M1
  • Spring Cloud Contract 3.0.0.M1 (issues)
  • Spring Cloud Starter Build 2020.0.0-M1
  • Spring Cloud Config 3.0.0.M1
  • Spring Cloud Build 3.0.0.M1
  • Spring Cloud Cloudfoundry 3.0.0.M1
  • Spring Cloud Security 3.0.0.M1
  • Spring Cloud Bus 3.0.0.M1
  • Spring Cloud Vault 3.0.0.M1
  • Spring Cloud Zookeeper 3.0.0.M1 (issues)
  • Spring Cloud Commons 3.0.0.M1 (issues)
  • Spring Cloud Openfeign 3.0.0.M1 (issues)