Spring Data 2026.0
When upgrading to Spring Data 2026.0, refer to the Spring Data 2026.0 Release Notes for newly introduced APIs, deprecated APIs, and breaking changes. Spring Data 2026.0 is the release train for Spring Boot 4.1, and the Spring Boot 4.1 upgrade recipe chains this recipe.
The io.arconia.rewrite.spring.data2026.UpgradeSpringData_2026_0 recipe automates the changes introduced in Spring Data 2026.0. You can use it to update your project to the latest Spring Data 2026.0.x release train.
The recipe will:
-
Upgrade
org.springframework.data:spring-data-bomto the 2026.0.x release train, and each Spring Data module to its own release line within that train.
Spring Data 2026.0 removes no public API. Two changes still deserve attention: projection parameter types of web handler methods now have to be annotated with @ProjectedPayload, and the Spring Data Redis constructors that accept the older Jedis client types are deprecated in favor of UnifiedJedis.
See its entry in the Recipe Catalog for the full list of recipes this upgrade applies, each with its options and a before/after example.
Run the Recipe
You can apply this recipe with any OpenRewrite-compatible tool. The tabs below show three of them: the Arconia CLI, the OpenRewrite Gradle plugin, and the OpenRewrite Maven plugin. See Running Recipes for a comparison of when to pick each one.
-
Arconia CLI
-
Gradle
-
Maven
arconia rewrite run --recipe-name io.arconia.rewrite.spring.data2026.UpgradeSpringData_2026_0
First, create an init.gradle file in your project root with the following content.
initscript {
repositories {
gradlePluginPortal()
}
dependencies {
classpath("org.openrewrite:plugin:latest.release")
}
}
rootProject {
plugins.apply(org.openrewrite.gradle.RewritePlugin)
dependencies {
rewrite("io.arconia.migrations:rewrite-spring:latest.release")
}
// Remove when project repositories are disabled
afterEvaluate {
if (repositories.isEmpty()) {
repositories {
mavenCentral()
}
}
}
configurations.named("rewrite") {
canBeConsumed = false
}
}
Then, run the following command.
./gradlew rewriteRun \
--init-script init.gradle \
--no-parallel \
-DactiveRecipe=io.arconia.rewrite.spring.data2026.UpgradeSpringData_2026_0
You can remove the init.gradle file afterwards.
./mvnw -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.recipeArtifactCoordinates=io.arconia.migrations:rewrite-spring:LATEST \
-Drewrite.activeRecipes=io.arconia.rewrite.spring.data2026.UpgradeSpringData_2026_0