Skip to content

Commit

Permalink
feat: Upgrade to Spring Boot 3.2, and Virtual Threads if on Java 21 (#…
Browse files Browse the repository at this point in the history
…446)

* feat: add recipe for Spring Boot Java 21 related recipes

* feat: restore spring boot 3.2 recipe, add Spring Boot 3.2 recipe

* Revert spring-boot-31-properties.yml changes

* Rename SpringBootProperties_3_2_Java21

---------

Co-authored-by: Tim te Beek <[email protected]>
  • Loading branch information
SimonVerhoeven and timtebeek authored Nov 20, 2023
1 parent b907c2a commit b3bc34d
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 1 deletion.
6 changes: 5 additions & 1 deletion src/main/resources/META-INF/rewrite/spring-boot-31.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,11 @@
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_1
displayName: Migrate to Spring Boot 3.1
description: 'Upgrade to Spring Boot 3.1'
description: >
Migrate applications to the latest Spring Boot 3.1 release. This recipe will modify an
application's build files, make changes to deprecated/preferred APIs, and migrate configuration settings that have
changes between versions. This recipe will also chain additional framework migrations (Spring Framework, Spring Data,
etc) that are required as part of the migration to Spring Boot 3.0.
tags:
- spring
- boot
Expand Down
57 changes: 57 additions & 0 deletions src/main/resources/META-INF/rewrite/spring-boot-32.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#
# Copyright 2023 the original author or authors.
# <p>
# Licensed under the Apache License, Version 2.0 (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://www.apache.org/licenses/LICENSE-2.0
# <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_2
displayName: Migrate to Spring Boot 3.2
description: >
Migrate applications to the latest Spring Boot 3.2 release. This recipe will modify an
application's build files, make changes to deprecated/preferred APIs, and migrate configuration settings that have
changes between versions. This recipe will also chain additional framework migrations (Spring Framework, Spring Data,
etc) that are required as part of the migration to Spring Boot 3.1.
tags:
- spring
- boot
recipeList:
- org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_1
- org.openrewrite.java.dependencies.UpgradeDependencyVersion:
groupId: org.springframework.boot
artifactId: "*"
newVersion: 3.2.x
overrideManagedVersion: false
- org.openrewrite.maven.UpgradeParentVersion:
groupId: org.springframework.boot
artifactId: spring-boot-starter-parent
newVersion: 3.2.x
- org.openrewrite.gradle.plugins.UpgradePluginVersion:
pluginIdPattern: org.springframework.boot
newVersion: 3.2.x
- org.openrewrite.java.spring.security6.UpgradeSpringSecurity_6_2
- org.openrewrite.java.spring.boot3.SpringBootProperties_3_2
- org.openrewrite.java.spring.boot3.EnableVirtualThreads

---
type: specs.openrewrite.org/v1beta/recipe
name: org.openrewrite.java.spring.boot3.EnableVirtualThreads
displayName: Enable Virtual Threads on Java 21
description: Set `spring.threads.virtual.enabled` to `true` in `application.properties` or `application.yml`.
preconditions:
- org.openrewrite.java.search.HasJavaVersion:
version: 21.X
recipeList:
- org.openrewrite.java.spring.AddSpringProperty:
property: spring.threads.virtual.enabled
value: true

0 comments on commit b3bc34d

Please sign in to comment.