Skip to content

Commit 64f8669

Browse files
cjobinabotimtebeek
andauthored
recipes for build and plugin upgrade (#476)
* recipes for build and plugin upgrade * added UpgradePluginsForJava11 to list * Update java-version-21.yml * Update src/main/resources/META-INF/rewrite/java-version-11.yml Co-authored-by: Tim te Beek <[email protected]> * Update src/main/resources/META-INF/rewrite/java-version-17.yml Co-authored-by: Tim te Beek <[email protected]> --------- Co-authored-by: Tim te Beek <[email protected]>
1 parent 30d037d commit 64f8669

File tree

3 files changed

+95
-28
lines changed

3 files changed

+95
-28
lines changed

src/main/resources/META-INF/rewrite/java-version-11.yml

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,25 +56,43 @@ recipeList:
5656
- org.openrewrite.java.migrate.javax.JavaxXmlStreamAPIs
5757
- org.openrewrite.java.migrate.cobertura.RemoveCoberturaMavenPlugin
5858
- org.openrewrite.java.migrate.wro4j.UpgradeWro4jMavenPluginVersion
59-
- org.openrewrite.java.migrate.UpgradeJavaVersion:
60-
version: 11
61-
- org.openrewrite.maven.UpgradePluginVersion:
62-
groupId: org.apache.maven.plugins
63-
artifactId: maven-compiler-plugin
64-
newVersion: 3.6.2
59+
- org.openrewrite.java.migrate.UpgradeBuildToJava11
6560
# Disabled due to null safety issues in the current implementation
6661
# https://github.com/openrewrite/rewrite-migrate-java/issues/250
6762
# - org.openrewrite.java.migrate.util.JavaUtilAPIs
6863
- org.openrewrite.java.migrate.util.OptionalNotPresentToIsEmpty
6964
- org.openrewrite.java.migrate.util.OptionalNotEmptyToIsPresent
7065
- org.openrewrite.java.migrate.util.OptionalStreamRecipe
71-
- org.openrewrite.github.SetupJavaUpgradeJavaVersion:
72-
minimumJavaMajorVersion: 11
7366
- org.openrewrite.java.migrate.InternalBindContextFactory
7467
- org.openrewrite.java.migrate.RemovedSecurityManagerMethods
68+
- org.openrewrite.java.migrate.UpgradePluginsForJava11
7569

7670
---
7771
type: specs.openrewrite.org/v1beta/recipe
72+
name: org.openrewrite.java.migrate.UpgradeBuildToJava11
73+
displayName: Upgrade build to Java 11
74+
description: Updates build files to use Java 11 as the target/source.
75+
tags:
76+
- java11
77+
recipeList:
78+
- org.openrewrite.java.migrate.UpgradeJavaVersion:
79+
version: 11
80+
---
81+
type: specs.openrewrite.org/v1beta/recipe
82+
name: org.openrewrite.java.migrate.UpgradePluginsForJava11
83+
displayName: Upgrade plugins to Java 11 compatible versions
84+
description: Updates plugins to version compatible with Java 11.
85+
tags:
86+
- java11
87+
recipeList:
88+
- org.openrewrite.maven.UpgradePluginVersion:
89+
groupId: org.apache.maven.plugins
90+
artifactId: maven-compiler-plugin
91+
newVersion: 3.6.2
92+
- org.openrewrite.github.SetupJavaUpgradeJavaVersion:
93+
minimumJavaMajorVersion: 11
94+
---
95+
type: specs.openrewrite.org/v1beta/recipe
7896
name: org.openrewrite.java.migrate.javax.AddJaxbDependencies
7997
displayName: Add explicit JAXB dependencies
8098
description: >

src/main/resources/META-INF/rewrite/java-version-17.yml

Lines changed: 32 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,8 @@ tags:
2727
- java17
2828
recipeList:
2929
- org.openrewrite.java.migrate.Java8toJava11
30-
- org.openrewrite.java.migrate.UpgradeJavaVersion:
31-
version: 17
30+
- org.openrewrite.java.migrate.UpgradeBuildToJava17
3231
- org.openrewrite.java.migrate.lang.StringFormatted
33-
- org.openrewrite.github.SetupJavaUpgradeJavaVersion:
34-
minimumJavaMajorVersion: 17
35-
- org.openrewrite.gradle.UpdateGradleWrapper:
36-
version: 7.3
37-
addIfMissing: false
3832
- org.openrewrite.staticanalysis.InstanceOfPatternMatch
3933
- org.openrewrite.java.migrate.RemoveMethodInvocation:
4034
methodPattern: java.lang.Runtime traceInstructions(boolean)
@@ -45,6 +39,37 @@ recipeList:
4539
- org.openrewrite.java.migrate.DeprecatedLogRecordThreadID
4640
- org.openrewrite.java.migrate.RemovedLegacySunJSSEProviderName
4741
- org.openrewrite.java.migrate.Jre17AgentMainPreMainPublic
42+
- org.openrewrite.java.migrate.DeprecatedCountStackFramesMethod
43+
- org.openrewrite.java.migrate.RemovedZipFinalizeMethods
44+
- org.openrewrite.java.migrate.RemovedSSLSessionGetPeerCertificateChainMethodImpl
45+
- org.openrewrite.java.migrate.SunNetSslPackageUnavailable
46+
- org.openrewrite.java.migrate.RemovedRMIConnectorServerCredentialTypesConstant
47+
- org.openrewrite.java.migrate.RemovedFileIOFinalizeMethods
48+
- org.openrewrite.java.migrate.UpgradePluginsForJava17
49+
50+
---
51+
type: specs.openrewrite.org/v1beta/recipe
52+
name: org.openrewrite.java.migrate.UpgradeBuildToJava17
53+
displayName: Upgrade build to Java 17
54+
description: Updates build files to use Java 17 as the target/source.
55+
tags:
56+
- java17
57+
recipeList:
58+
- org.openrewrite.java.migrate.UpgradeJavaVersion:
59+
version: 17
60+
---
61+
type: specs.openrewrite.org/v1beta/recipe
62+
name: org.openrewrite.java.migrate.UpgradePluginsForJava17
63+
displayName: Upgrade plugins to Java 17 compatible versions
64+
description: Updates plugins to version compatible with Java 17.
65+
tags:
66+
- java17
67+
recipeList:
68+
- org.openrewrite.github.SetupJavaUpgradeJavaVersion:
69+
minimumJavaMajorVersion: 17
70+
- org.openrewrite.gradle.UpdateGradleWrapper:
71+
version: 7.3
72+
addIfMissing: false
4873
- org.openrewrite.maven.UpgradePluginVersion:
4974
groupId: org.apache.maven.plugins
5075
artifactId: maven-checkstyle-plugin
@@ -53,12 +78,6 @@ recipeList:
5378
groupId: com.sonatype.clm
5479
artifactId: clm-maven-plugin
5580
newVersion: 2.47.6-01
56-
- org.openrewrite.java.migrate.DeprecatedCountStackFramesMethod
57-
- org.openrewrite.java.migrate.RemovedZipFinalizeMethods
58-
- org.openrewrite.java.migrate.RemovedSSLSessionGetPeerCertificateChainMethodImpl
59-
- org.openrewrite.java.migrate.SunNetSslPackageUnavailable
60-
- org.openrewrite.java.migrate.RemovedRMIConnectorServerCredentialTypesConstant
61-
- org.openrewrite.java.migrate.RemovedFileIOFinalizeMethods
6281
---
6382
type: specs.openrewrite.org/v1beta/recipe
6483
name: org.openrewrite.java.migrate.DeprecatedJavaxSecurityCert

src/main/resources/META-INF/rewrite/java-version-21.yml

Lines changed: 37 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright 2023 the original author or authors.
2+
# Copyright 2024 the original author or authors.
33
# <p>
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -25,15 +25,34 @@ tags:
2525
- java21
2626
recipeList:
2727
- org.openrewrite.java.migrate.UpgradeToJava17
28-
- org.openrewrite.java.migrate.UpgradeJavaVersion:
29-
version: 21
28+
- org.openrewrite.java.migrate.UpgradeBuildToJava21
3029
- org.openrewrite.java.migrate.RemoveIllegalSemicolons
3130
- org.openrewrite.java.migrate.lang.ThreadStopUnsupported
3231
- org.openrewrite.java.migrate.net.URLConstructorsToURIRecipes
3332
- org.openrewrite.java.migrate.util.SequencedCollection
3433
- org.openrewrite.java.migrate.util.UseLocaleOf
3534
- org.openrewrite.staticanalysis.ReplaceDeprecatedRuntimeExecMethods
3635
- org.openrewrite.github.SetupJavaUpgradeJavaVersion
36+
- org.openrewrite.java.migrate.UpgradePluginsForJava21
37+
38+
---
39+
type: specs.openrewrite.org/v1beta/recipe
40+
name: org.openrewrite.java.migrate.UpgradeBuildToJava21
41+
displayName: Upgrade build to Java 21
42+
description: Updates build files to use Java 21 as the target/source.
43+
tags:
44+
- java21
45+
recipeList:
46+
- org.openrewrite.java.migrate.UpgradeJavaVersion:
47+
version: 21
48+
---
49+
type: specs.openrewrite.org/v1beta/recipe
50+
name: org.openrewrite.java.migrate.UpgradePluginsForJava21
51+
displayName: Upgrade plugins to Java 21 compatible versions
52+
description: Updates plugins and dependencies to version compatible with Java 21.
53+
tags:
54+
- java21
55+
recipeList:
3756
# GitHub Actions bump needs Gradle Wrapper bump too https://docs.gradle.org/current/userguide/compatibility.html#java
3857
- org.openrewrite.gradle.UpdateGradleWrapper:
3958
version: 8.5
@@ -55,7 +74,6 @@ recipeList:
5574
groupId: org.modelmapper
5675
artifactId: modelmapper
5776
newVersion: 3.2.x
58-
5977
---
6078
type: specs.openrewrite.org/v1beta/recipe
6179
name: org.openrewrite.java.migrate.util.SequencedCollection
@@ -77,6 +95,18 @@ recipeList:
7795
- org.openrewrite.java.ChangeMethodName:
7896
methodPattern: java.util.NavigableSet descendingSet()
7997
newMethodName: reversed
80-
# XXX convert additional patterns to sequenced collections
81-
# list.listIterator() -> ???
82-
# list.listIterator(int) -> ???
98+
---
99+
type: specs.openrewrite.org/v1beta/recipe
100+
name: org.openrewrite.java.migrate.RemovedSubjectMethods
101+
displayName: Adopt `javax.security.auth.Subject.current()` and `javax.security.auth.Subject.callAs()` methods`
102+
description: Replaces the `javax.security.auth.Subject.getSubject()` and `javax.security.auth.Subject.doAs()` methods
103+
with `javax.security.auth.Subject.current()` and `javax.security.auth.Subject.callAs()`.
104+
tags:
105+
- java21
106+
recipeList:
107+
- org.openrewrite.java.ChangeMethodName:
108+
methodPattern: javax.security.auth.Subject getSubject()
109+
newMethodName: current
110+
- org.openrewrite.java.ChangeMethodName:
111+
methodPattern: javax.security.auth.Subject callAs()
112+
newMethodName: doAs

0 commit comments

Comments
 (0)