Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 82 additions & 0 deletions src/main/resources/META-INF/rewrite/spring-boot-35-properties.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
#
# Copyright 2025 the original author or authors.
# <p>
# Licensed under the Moderne Source Available License (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# <p>
# https://docs.moderne.io/licensing/moderne-source-available-license
# <p>
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# This file is automatically generated by the GeneratePropertiesMigratorConfiguration class.
# Do not edit this file manually. Update the Spring Boot property metadata upstream instead.
---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot3.SpringBootProperties_3_5
displayName: Migrate Spring Boot properties to 3.5
description: Migrate properties found in `application.properties` and `application.yml`.
tags:
- spring
- boot
recipeList:
- org.openrewrite.java.spring.ChangeSpringPropertyValue:
propertyKey: "**.enabled"
oldValue: "(?i)^(?!false$).*$"
newValue: true
regex: true
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.codec.log-request-details
newPropertyKey: spring.http.codec.log-request-details
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.codec.max-in-memory-size
newPropertyKey: spring.http.codec.max-in-memory-size
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.graphql.path
newPropertyKey: spring.graphql.http.path
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.graphql.sse.timeout
newPropertyKey: spring.graphql.http.sse.timeout
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.auto-escape
newPropertyKey: spring.groovy.template.auto-escape
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.auto-indent
newPropertyKey: spring.groovy.template.auto-indent
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.auto-indent-string
newPropertyKey: spring.groovy.template.auto-indent-string
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.auto-new-line
newPropertyKey: spring.groovy.template.auto-new-line
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.base-template-class
newPropertyKey: spring.groovy.template.base-template-class
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.cache-templates
newPropertyKey: spring.groovy.template.cache
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.declaration-encoding
newPropertyKey: spring.groovy.template.declaration-encoding
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.expand-empty-elements
newPropertyKey: spring.groovy.template.expand-empty-elements
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.locale
newPropertyKey: spring.groovy.template.locale
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.new-line-string
newPropertyKey: spring.groovy.template.new-line-string
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.resource-loader-path
newPropertyKey: spring.groovy.template.resource-loader-path
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: spring.groovy.template.configuration.use-double-quotes
newPropertyKey: spring.groovy.template.use-double-quotes
- org.openrewrite.java.spring.ChangeSpringPropertyKey:
oldPropertyKey: management.otlp.metrics.export.resource-attributes
newPropertyKey: management.opentelemetry.resource-attributes
65 changes: 65 additions & 0 deletions src/main/resources/META-INF/rewrite/spring-boot-35.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#
# Copyright 2025 the original author or authors.
# <p>
# Licensed under the Moderne Source Available License (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# <p>
# https://docs.moderne.io/licensing/moderne-source-available-license
# <p>
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_5
displayName: Migrate to Spring Boot 3.5
description: >-
Migrate applications to the latest Spring Boot 3.5 release. This recipe will modify an application's build files,
make changes to deprecated/preferred APIs.
tags:
- spring
- boot
recipeList:
- org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_4
- org.openrewrite.java.spring.boot3.SpringBootProperties_3_5
- org.openrewrite.java.spring.cloud2025.UpgradeSpringCloud_2025
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.boot
artifactId: "*"
newVersion: 3.5.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.boot
artifactId: spring-boot-dependencies
newVersion: 3.5.x
overrideManagedVersion: true
- org.openrewrite.maven.UpgradePluginVersion:
groupId: org.springframework.boot
artifactId: spring-boot-maven-plugin
newVersion: 3.5.x
- org.openrewrite.maven.UpgradeParentVersion:
groupId: org.springframework.boot
artifactId: spring-boot-starter-parent
newVersion: 3.5.x
- org.openrewrite.gradle.plugins.UpgradePluginVersion:
pluginIdPattern: org.springframework.boot
newVersion: 3.5.x
- org.openrewrite.java.spring.boot3.UpdatePrometheusPushgateway

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot3.UpdatePrometheusPushgateway
displayName: Update Prometheus Pushgateway Dependency Coordinates
description: Update the Prometheus Pushgateway artifact ID for Spring Boot 3.5 compatibility.
recipeList:
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: io.prometheus
oldArtifactId: simpleclient_pushgateway
newGroupId: io.prometheus
newArtifactId: prometheus-metrics-exporter-pushgateway

126 changes: 126 additions & 0 deletions src/main/resources/META-INF/rewrite/spring-cloud-2025.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
#
# Copyright 2025 the original author or authors.
# <p>
# Licensed under the Moderne Source Available License (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# <p>
# https://docs.moderne.io/licensing/moderne-source-available-license
# <p>
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.cloud2025.UpgradeSpringCloud_2025
displayName: Migrate to Spring Cloud 2025
description: Migrate applications to the latest Spring Cloud 2025 (Northfields) release.
tags:
- spring
- cloud
recipeList:
- org.openrewrite.java.spring.cloud2024.UpgradeSpringCloud_2024
- org.openrewrite.java.spring.cloud2025.DependencyUpgrades
- org.openrewrite.java.spring.cloud2025.UpdateGatewayForSpringCloud_2025

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.cloud2025.DependencyUpgrades
displayName: Upgrade dependencies to Spring Cloud 2025
description: Upgrade dependencies to Spring Cloud 2025 from prior 2024.x version.
tags:
- spring
- cloud
recipeList:
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: "*"
newVersion: 4.3.x
overrideManagedVersion: false
- org.openrewrite.maven.UpgradeParentVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-starter-parent
newVersion: 2025.0.x
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-dependencies
newVersion: 2025.0.x
overrideManagedVersion: false

# circuitbreaker, kubernetes & task follow a different versioning scheme
# https://docs.spring.io/spring-cloud-release/reference/2025.0/
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-starter-circuitbreaker-*
newVersion: 3.3.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-circuitbreaker-*
newVersion: 3.3.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-starter-kubernetes-*
newVersion: 3.3.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-kubernetes-*
newVersion: 3.3.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-starter-task-*
newVersion: 3.3.x
overrideManagedVersion: false
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.cloud
artifactId: spring-cloud-task-*
newVersion: 3.3.x
overrideManagedVersion: false

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.cloud2025.UpdateGatewayForSpringCloud_2025
displayName: Upgrade to Sky framework 3.5.x Update Gateway Dependency Coordinates
description: Update the Gateway artifact ID for Spring Cloud 2025 compatibility.
tags:
- spring
- cloud
- gateway
recipeList:
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-gateway-server
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-gateway-server-webflux
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-starter-gateway
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-starter-gateway-server-webflux
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-gateway-server-mvc
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-gateway-server-webmvc
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-starter-gateway-mvc
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-starter-gateway-server-webmvc
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-gateway-webflux
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-gateway-proxyexchange-webflux
- org.openrewrite.java.dependencies.ChangeDependency:
oldGroupId: org.springframework.cloud
oldArtifactId: spring-cloud-gateway-mvc
newGroupId: org.springframework.cloud
newArtifactId: spring-cloud-gateway-proxyexchange-webmvc