Spring Cloud 2025.0.0-M1 (aka Northfields) has been released

Releases | Spencer Gibb | January 30, 2025 | ...

On behalf of the community, I am pleased to announce that the Milestone 1 (M1) of the Spring Cloud 2025.0 (aka Northfields) Release Train is available today. The release can be found in Spring Milestone repository. You can check out the 2025.0 release notes for more information.

Notable Changes in the 2025.0.0-M1 Release

Spring Cloud 2025.0.0-M1 depends on Spring Boot 3.5.0-M1. See all issues and pull requests that are part of the release here.

Spring Cloud Gateway

  • Adds support for spring-cloud-function and spring-cloud-stream handlers #3646
  • Adds support for a Bucket4jRateLimiter in server webflux #2955
  • Deprecate WebClientRouting infrastructure. This will be removed in 5.0 later this year. #3680
  • New Module and Starter names have been created and the old names are deprectated. The new and deprecated artifacts are listed in the table below #3645. These new names clarify the two styles of gateway (server or proxy exchange) as well as the two web stacks from Spring Framework (Web MCV and WebFlux). Use of the deprecated artifacts will add a warning message in the logs.
Deprecated Artifact New Artifact
spring-cloud-gateway-server spring-cloud-gateway-server-webflux
spring-cloud-gateway-server-mvc spring-cloud-gateway-server-webmvc
spring-cloud-starter-gateway-server spring-cloud-starter-gateway-server-webflux
spring-cloud-starter-gateway-server-mvc spring-cloud-starter-gateway-server-webmvc
spring-cloud-gateway-mvc spring-cloud-gateway-proxyexchange-webmvc
spring-cloud-gateway-webflux spring-cloud-gateway-proxyexchange-webflux

Spring Cloud Config

  • Add property to disable adding invalid prefix when decryption fails #2708

Spring Cloud Stream

  • Clarify that having a custom error handler disables auto send to DLQ 3063.

  • GH-3062: Fix KafkaBinderMetrics for resource leaks 3064.

Spring Cloud Netflix

  • Allow customising Apache HTTP Client 5 RequestConfig in EurekaClientHttpRequestFactorySupplier 4394

Spring Cloud Circuitbreaker

  • Adds support for reactive bulkheads #166

Spring Cloud Function

  • Change "synchronized" to reentrant lock for virtual-threads #1188

The following modules were updated as part of 2025.0.0-M1:

Module Version Issues
Spring Cloud Openfeign 4.3.0-M1 (issues)
Spring Cloud Config 4.3.0-M1 (issues)
Spring Cloud Build 4.3.0-M1 (issues)
Spring Cloud Stream 4.3.0-M1 (issues)
Spring Cloud Netflix 4.3.0-M1 (issues)
Spring Cloud Circuitbreaker 3.3.0-M1 (issues)
Spring Cloud Contract 4.3.0-M1 (issues)
Spring Cloud Commons 4.3.0-M1 (issues)
Spring Cloud Consul 4.3.0-M1 (issues)
Spring Cloud Gateway 4.3.0-M1 (issues)
Spring Cloud Vault 4.3.0-M1 (issues)
Spring Cloud Function 4.3.0-M1 (issues)
Spring Cloud Dependencies 2025.0.0-M1 (issues)
Spring Cloud Task 3.3.0-M1 (issues)
Spring Cloud Kubernetes 3.3.0-M1 (issues)
Spring Cloud Bus 4.3.0-M1 (issues)
Spring Cloud Zookeeper 4.3.0-M1 (issues)

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>2025.0.0-M1</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:

plugins {
  id 'java'
  id 'org.springframework.boot' version '3.5.0-M1'
  id 'io.spring.dependency-management' version '1.1.7'
}

//...

ext {
  set('springCloudVersion', "2025.0.0-M1")
}

dependencies {
  implementation 'org.springframework.cloud:spring-cloud-starter-config'
  implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
  //...
}

dependencyManagement {
  imports {
    mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
  }
}

//...

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all