/
Migration to Spring Boot 4.0

Migration to Spring Boot 4.0

Please add any missing hints to this document!

See TC’s draft of Officially Supported Technologies / Trillium document.

Help

Ask on #development Slack channel if a module doesn’t build with Spring Boot 4.0.

Spring Boot

Upgrade the spring-boot-starter-parent version to the latest 4.0 version, find the version on https://github.com/spring-projects/spring-boot/tags

This is a snapshot version like 4.0.0-SNAPSHOT or a milestone version like 4.0.0-M4 or a release candidate version like 4.0.0-RC5 because a final version is not available yet.

Why snapshot, milestone and release candidate versions?

Most FOLIO development teams start Trillium work before the official Spring Boot 4.0.0 version gets released:

Spring Branch

Initial Release

End of OSS Support

Spring Branch

Initial Release

End of OSS Support

Spring Boot 4.0.x

2025-11-20

2026-12-31

Spring Boot 4.0.0 Snapshot version expected 2025-06.
Spring Boot 4.0.0 Milestone version expected 2025-07.
Spring Boot 4.0.0 Release candidate version expected 2025-10.

See https://spring.io/projects/spring-boot#support for release dates, https://github.com/spring-projects/spring-boot/wiki/Supported-Versions#release-schedule for release schedules, and https://spring.io/blog/2025/01/21/milestones-to-central for Milestones support.

Why snapshot versions?

For spring-cloud-starter-openfeign.

spring-cloud-starter-openfeign is a dependency of folio-spring-base, folio-spring-system-user and most spring based modules. spring-cloud-starter-openfeign 4.4.x is required for Spring Boot 4.0.x, and spring-cloud-starter-openfeign hasn’t published milestone or release candidate versions yet, only 4.0.0-SNAPSHOT versions: https://github.com/spring-cloud/spring-cloud-openfeign/tags

This is low risk because Spring Cloud OpenFeign project is treated as feature-complete. It releases a new minor version for each Spring Boot minor version.

When upgrade to release versions?

As needed, for example when a security fix requires a Spring Boot version bump.

What is Spring Boot’s milestone and release candidate history?

v3.5.x:

v3.4.x:

v3.3.x:

v3.2.x:

v3.1.x:

Spring Boot has always been released on the planned date.

Difference between RC and GA

Is there a risk that the devs on the spring project change their minds and some things in the 4.0 RC don't make it into 4.0 GA?

No, RC is feature freeze.

Even if a feature from RC gets removed in GA, most FOLIO modules won’t be affected because usually they don’t use new features from the latest minor version.

Related content