Spring Ecosystem Update: Spring Cloud 2025.0.2 GA, Spring Modulith 2.1 M4, Spring AI M4 Features, 2026-04-05
java

Spring Ecosystem Update: Spring Cloud 2025.0.2 GA, Spring Modulith 2.1 M4, Spring AI M4 Features, 2026-04-05

4 min read

Spring Cloud 2025.0.2 (Northfields) GA

Spring Cloud 2025.0.2 — the second patch release in the Northfields train — reached general availability on April 2, 2026. This release is built on Spring Boot 3.5.13 and updates 13 sub-projects, delivering bug fixes and dependency upgrades for teams running Spring Boot 3.5.x microservice architectures that are not yet on Spring Boot 4.0.

The 13 updated components span the full range of Spring Cloud concerns: Spring Cloud Gateway 4.3.4 and Spring Cloud Contract 4.3.3 received extra point releases beyond the standard .2 suffix, indicating targeted fixes in those projects. The remaining components — Spring Cloud Config, Commons, OpenFeign, Kubernetes, Vault, CircuitBreaker, Netflix (Eureka), Stream, Consul, and Zookeeper — all land at 4.3.2 or 3.3.2 depending on the generation. All components are available in Maven Central under the org.springframework.cloud group.

For teams on Spring Boot 3.5.x, this patch is the recommended upgrade path and requires no code changes beyond updating the Spring Cloud BOM version in your Maven or Gradle build file. Teams planning a migration to Spring Boot 4.0 should note that the next generation Spring Cloud release train targeting Boot 4.x is under active development and will introduce breaking changes to cloud-native service discovery and gateway APIs.

Read more — Spring


Spring Modulith 2.1.0-M4 — JobRunr Event Externalisation

Spring Modulith 2.1.0-M4 is the fourth milestone toward the next minor feature release, delivering two capabilities for event-driven architectures. The most notable addition is the new JobRunrEventExternalizer class, which enables Spring Modulith's Application Module Events to be externalised and processed by JobRunr — the Java background job scheduling framework.

With JobRunrEventExternalizer, domain events published within a Spring Modulith application module can be handed off to JobRunr's persistent job store, where they are executed with JobRunr's built-in retry semantics, failure tracking, and dashboard visibility. This bridges Spring Modulith's module-boundary event model with JobRunr's operational observability, making it a practical choice for applications that already depend on JobRunr for scheduled jobs and want consistent job infrastructure across both scheduled and event-driven work.

The second addition is event publication opt-out capability. By default, Spring Modulith tracks all application module event publications in the event publication registry for durability and replay. The new opt-out mechanism lets developers annotate specific event types or listeners to exclude them from publication tracking — useful for high-volume internal events where persistence overhead is not justified. Spring Modulith 2.1.0-M4 is available from the Spring Milestone repository under coordinates org.springframework.experimental:spring-modulith-bom:2.1.0-M4.

Read more — Spring


Spring AI 2.0.0-M4 — Google Search and Structured Output Controls

Spring AI 2.0.0-M4 introduced several new capabilities beyond the security CVE patches shipped alongside it. The release adds the ability to configure Google Search as a tool for Gemini 3.x models, enabling Spring AI chat clients to route queries through Gemini's grounded search functionality when using the google-genai model provider. Custom tool configurations can be combined with Google Search in a single request, giving applications the ability to mix retrieved search context with domain-specific tool calls in a single inference step.

A second feature addresses structured output handling: developers can now dynamically disable native structured output for individual requests, even when a default output converter is configured on the chat client. Previously, disabling structured output required changing client-level configuration globally. The per-request override is implemented via a new option in ChatOptions, which is useful for prompts that return free-form text alongside models configured to produce JSON by default.

The release includes 2 new features, 10 bug fixes, and 13 additional improvements across integrations including Azure OpenAI, Redis, and Neo4j vector stores. A fix for extraBody configuration being dropped when toolDefinitions were specified in the same API request closes a regression that affected advanced tool-use scenarios. Spring AI 2.0.0-M4 is available from the Spring Milestone repository.

Read more — Spring


Stanislav Lentsov

Written by

Stanislav Lentsov

Software Architect

You May Also Enjoy