From dcf399b6aa60a1e49ebf85f9eedc98364d9f826b Mon Sep 17 00:00:00 2001 From: Mike Solomon Date: Mon, 13 Nov 2023 08:48:45 -0800 Subject: [PATCH] 8.9.0 release --- src/main/resources/CHANGELOG-2023-11-13.md | 44 +++++ .../CHANGELOG-2023-11-07.md | 0 src/main/resources/recipeDescriptors.yml | 155 ++++++++++++++---- 3 files changed, 166 insertions(+), 33 deletions(-) create mode 100644 src/main/resources/CHANGELOG-2023-11-13.md rename src/main/resources/{ => old-changelogs}/CHANGELOG-2023-11-07.md (100%) diff --git a/src/main/resources/CHANGELOG-2023-11-13.md b/src/main/resources/CHANGELOG-2023-11-13.md new file mode 100644 index 0000000..b85c5be --- /dev/null +++ b/src/main/resources/CHANGELOG-2023-11-13.md @@ -0,0 +1,44 @@ +# 8.9.0 release (2023-11-13) + +## New Recipes + +* [org.openrewrite.java.dependencies.DependencyInsight](https://docs.openrewrite.org/recipes/java/dependencies/dependencyinsight): Finds dependencies, including transitive dependencies, in both Gradle and Maven projects. Matches within all Gradle dependency configurations and maven scopes. +* [org.openrewrite.java.dependencies.DependencyResolutionDiagnostic](https://docs.openrewrite.org/recipes/java/dependencies/dependencyresolutiondiagnostic): Recipes which manipulate dependencies must be able to successfully access the artifact repositories and resolve dependencies from them. This recipe produces two data tables used to understand the state of dependency resolution. + +The Repository accessibility report lists all the artifact repositories known to the project and whether respond to network access. The network access is attempted while the recipe is run and so is representative of current conditions. + +The Gradle dependency configuration errors lists all the dependency configurations that failed to resolve one or more dependencies when the project was parsed. This is representative of conditions at the time the LST was parsed. +* [org.openrewrite.java.migrate.DontOverfetchDto](https://docs.openrewrite.org/recipes/java/migrate/dontoverfetchdto): Replace method parameters that have DTOs with their data elements when only the specified data element is used. +* [org.openrewrite.java.migrate.search.FindDataUsedOnDto](https://docs.openrewrite.org/recipes/java/migrate/search/finddatausedondto): Find data elements used on DTOs. This is useful to provide information where data over-fetching may be a problem. +* [org.openrewrite.java.migrate.search.FindDtoOverfetching](https://docs.openrewrite.org/recipes/java/migrate/search/finddtooverfetching): Find methods that have 'opportunities' for improvement. +* [org.openrewrite.java.spring.boot3.SpringBootProperties_3_2](https://docs.openrewrite.org/recipes/java/spring/boot3/springbootproperties_3_2): Migrate properties found in `application.properties` and `application.yml`. +* [org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockito](https://docs.openrewrite.org/recipes/java/testing/jmockit/jmockitexpectationstomockito): Rewrites JMockit `Expectations` blocks to Mockito statements. + +## Removed Recipes + +* **org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockitoWhen**: Rewrites JMockit `Expectations` to `Mockito.when`. + +## Changed Recipes + +* [org.openrewrite.gradle.search.DependencyInsight](https://docs.openrewrite.org/recipes/gradle/search/dependencyinsight) was changed: + * Old Options: + * `artifactIdPattern: { type: String, required: true }` + * `configuration: { type: String, required: false }` + * `groupIdPattern: { type: String, required: true }` + * New Options: + * `artifactIdPattern: { type: String, required: true }` + * `configuration: { type: String, required: false }` + * `groupIdPattern: { type: String, required: true }` + * `version: { type: String, required: false }` +* [org.openrewrite.maven.search.DependencyInsight](https://docs.openrewrite.org/recipes/maven/search/dependencyinsight) was changed: + * Old Options: + * `artifactIdPattern: { type: String, required: true }` + * `groupIdPattern: { type: String, required: true }` + * `onlyDirect: { type: Boolean, required: false }` + * `scope: { type: String, required: true }` + * New Options: + * `artifactIdPattern: { type: String, required: true }` + * `groupIdPattern: { type: String, required: true }` + * `onlyDirect: { type: Boolean, required: false }` + * `scope: { type: String, required: false }` + * `version: { type: String, required: false }` \ No newline at end of file diff --git a/src/main/resources/CHANGELOG-2023-11-07.md b/src/main/resources/old-changelogs/CHANGELOG-2023-11-07.md similarity index 100% rename from src/main/resources/CHANGELOG-2023-11-07.md rename to src/main/resources/old-changelogs/CHANGELOG-2023-11-07.md diff --git a/src/main/resources/recipeDescriptors.yml b/src/main/resources/recipeDescriptors.yml index 5e9300c..3236812 100644 --- a/src/main/resources/recipeDescriptors.yml +++ b/src/main/resources/recipeDescriptors.yml @@ -1,6 +1,6 @@ rewrite-analysis: artifactId: "rewrite-analysis" - version: "2.0.7" + version: "2.1.0" markdownRecipeDescriptors: org.openrewrite.analysis.controlflow.ControlFlowVisualization: name: "org.openrewrite.analysis.controlflow.ControlFlowVisualization" @@ -349,7 +349,7 @@ rewrite-concourse: artifactId: "rewrite-concourse" rewrite-core: artifactId: "rewrite-core" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.DeleteSourceFiles: name: "org.openrewrite.DeleteSourceFiles" @@ -868,7 +868,7 @@ rewrite-github-actions: artifactId: "rewrite-github-actions" rewrite-gradle: artifactId: "rewrite-gradle" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.gradle.AddDependency: name: "org.openrewrite.gradle.AddDependency" @@ -1339,6 +1339,9 @@ rewrite-gradle: - name: "groupIdPattern" type: "String" required: true + - name: "version" + type: "String" + required: false isImperative: true artifactId: "rewrite-gradle" org.openrewrite.gradle.search.FindDependency: @@ -1434,7 +1437,7 @@ rewrite-gradle: artifactId: "rewrite-gradle" rewrite-groovy: artifactId: "rewrite-groovy" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.groovy.format.OmitParenthesesForLastArgumentLambda: name: "org.openrewrite.groovy.format.OmitParenthesesForLastArgumentLambda" @@ -1453,7 +1456,7 @@ rewrite-groovy: artifactId: "rewrite-groovy" rewrite-hcl: artifactId: "rewrite-hcl" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.hcl.DeleteContent: name: "org.openrewrite.hcl.DeleteContent" @@ -1537,7 +1540,7 @@ rewrite-hcl: artifactId: "rewrite-hcl" rewrite-hibernate: artifactId: "rewrite-hibernate" - version: "1.0.6" + version: "1.0.7" markdownRecipeDescriptors: org.openrewrite.hibernate.MigrateToHibernate61: name: "org.openrewrite.hibernate.MigrateToHibernate61" @@ -1604,7 +1607,7 @@ rewrite-hibernate: artifactId: "rewrite-hibernate" rewrite-java: artifactId: "rewrite-java" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.java.AddApache2LicenseHeader: name: "org.openrewrite.java.AddApache2LicenseHeader" @@ -2583,7 +2586,7 @@ rewrite-java: artifactId: "rewrite-java" rewrite-java-dependencies: artifactId: "rewrite-java-dependencies" - version: "1.0.11" + version: "1.2.0" markdownRecipeDescriptors: org.openrewrite.java.dependencies.AddDependency: name: "org.openrewrite.java.dependencies.AddDependency" @@ -2666,6 +2669,24 @@ rewrite-java-dependencies: required: false isImperative: true artifactId: "rewrite-java-dependencies" + org.openrewrite.java.dependencies.DependencyInsight: + name: "org.openrewrite.java.dependencies.DependencyInsight" + description: "Finds dependencies, including transitive dependencies, in both\ + \ Gradle and Maven projects. Matches within all Gradle dependency configurations\ + \ and maven scopes." + docLink: "https://docs.openrewrite.org/recipes/java/dependencies/dependencyinsight" + options: + - name: "artifactIdPattern" + type: "String" + required: true + - name: "groupIdPattern" + type: "String" + required: true + - name: "version" + type: "String" + required: false + isImperative: true + artifactId: "rewrite-java-dependencies" org.openrewrite.java.dependencies.DependencyLicenseCheck: name: "org.openrewrite.java.dependencies.DependencyLicenseCheck" description: "Locates and reports on all licenses in use." @@ -2693,6 +2714,22 @@ rewrite-java-dependencies: required: true isImperative: true artifactId: "rewrite-java-dependencies" + org.openrewrite.java.dependencies.DependencyResolutionDiagnostic: + name: "org.openrewrite.java.dependencies.DependencyResolutionDiagnostic" + description: "Recipes which manipulate dependencies must be able to successfully\ + \ access the artifact repositories and resolve dependencies from them. This\ + \ recipe produces two data tables used to understand the state of dependency\ + \ resolution. \n\nThe Repository accessibility report lists all the artifact\ + \ repositories known to the project and whether respond to network access.\ + \ The network access is attempted while the recipe is run and so is representative\ + \ of current conditions. \n\nThe Gradle dependency configuration errors lists\ + \ all the dependency configurations that failed to resolve one or more dependencies\ + \ when the project was parsed. This is representative of conditions at the\ + \ time the LST was parsed." + docLink: "https://docs.openrewrite.org/recipes/java/dependencies/dependencyresolutiondiagnostic" + options: [] + isImperative: true + artifactId: "rewrite-java-dependencies" org.openrewrite.java.dependencies.DependencyVulnerabilityCheck: name: "org.openrewrite.java.dependencies.DependencyVulnerabilityCheck" description: "This software composition analysis (SCA) tool detects and upgrades\ @@ -2774,7 +2811,7 @@ rewrite-java-dependencies: artifactId: "rewrite-java-dependencies" rewrite-java-security: artifactId: "rewrite-java-security" - version: "2.0.6" + version: "2.1.0" markdownRecipeDescriptors: org.openrewrite.java.security.FindTextDirectionChanges: name: "org.openrewrite.java.security.FindTextDirectionChanges" @@ -3402,7 +3439,7 @@ rewrite-jhipster: artifactId: "rewrite-jhipster" rewrite-json: artifactId: "rewrite-json" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.json.ChangeKey: name: "org.openrewrite.json.ChangeKey" @@ -3452,7 +3489,7 @@ rewrite-json: artifactId: "rewrite-json" rewrite-kotlin: artifactId: "rewrite-kotlin" - version: "1.5.1" + version: "1.7.0" markdownRecipeDescriptors: org.openrewrite.kotlin.FindKotlinSources: name: "org.openrewrite.kotlin.FindKotlinSources" @@ -4076,13 +4113,16 @@ rewrite-liberty: artifactId: "rewrite-liberty" rewrite-logging-frameworks: artifactId: "rewrite-logging-frameworks" - version: "2.0.6" + version: "2.1.0" markdownRecipeDescriptors: org.openrewrite.java.logging.ParameterizedLogging: name: "org.openrewrite.java.logging.ParameterizedLogging" description: "Transform logging statements using concatenation for messages\ \ and variables into a parameterized format. For example, `logger.info(\"\ - hi \" + userName)` becomes `logger.info(\"hi {}\", userName)`." + hi \" + userName)` becomes `logger.info(\"hi {}\", userName)`. This can significantly\ + \ boost performance for messages that otherwise would be assembled with String\ + \ concatenation. Particularly impactful when the log level is not enabled,\ + \ as no work is done to assemble the message." docLink: "https://docs.openrewrite.org/recipes/java/logging/parameterizedlogging" options: - name: "methodPattern" @@ -4173,8 +4213,10 @@ rewrite-logging-frameworks: artifactId: "rewrite-logging-frameworks" org.openrewrite.java.logging.log4j.ParameterizedLogging: name: "org.openrewrite.java.logging.log4j.ParameterizedLogging" - description: "Log4j 2.x supports parameterized logging, which can significantly\ - \ boost logging performance for disabled logging statements." + description: "Use Log4j 2.x parameterized logging, which can significantly boost\ + \ performance for messages that otherwise would be assembled with String concatenation.\ + \ Particularly impactful when the log level is not enabled, as no work is\ + \ done to assemble the message." docLink: "https://docs.openrewrite.org/recipes/java/logging/log4j/parameterizedlogging" options: [] isImperative: false @@ -4297,8 +4339,10 @@ rewrite-logging-frameworks: artifactId: "rewrite-logging-frameworks" org.openrewrite.java.logging.slf4j.ParameterizedLogging: name: "org.openrewrite.java.logging.slf4j.ParameterizedLogging" - description: "SLF4J supports parameterized logging, which can significantly\ - \ boost logging performance for disabled logging statements." + description: "Use SLF4J's parameterized logging, which can significantly boost\ + \ performance for messages that otherwise would be assembled with String concatenation.\ + \ Particularly impactful when the log level is not enabled, as no work is\ + \ done to assemble the message." docLink: "https://docs.openrewrite.org/recipes/java/logging/slf4j/parameterizedlogging" options: [] isImperative: false @@ -4320,7 +4364,7 @@ rewrite-logging-frameworks: artifactId: "rewrite-logging-frameworks" rewrite-maven: artifactId: "rewrite-maven" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.maven.AddCommentToMavenDependency: name: "org.openrewrite.maven.AddCommentToMavenDependency" @@ -5204,7 +5248,10 @@ rewrite-maven: required: false - name: "scope" type: "String" - required: true + required: false + - name: "version" + type: "String" + required: false isImperative: true artifactId: "rewrite-maven" org.openrewrite.maven.search.DoesNotIncludeDependency: @@ -5728,7 +5775,7 @@ rewrite-micronaut: artifactId: "rewrite-micronaut" rewrite-migrate-java: artifactId: "rewrite-migrate-java" - version: "2.2.1" + version: "2.3.0" markdownRecipeDescriptors: org.openrewrite.java.migrate.AddJDeprScanPlugin: name: "org.openrewrite.java.migrate.AddJDeprScanPlugin" @@ -5795,6 +5842,20 @@ rewrite-migrate-java: options: [] isImperative: false artifactId: "rewrite-migrate-java" + org.openrewrite.java.migrate.DontOverfetchDto: + name: "org.openrewrite.java.migrate.DontOverfetchDto" + description: "Replace method parameters that have DTOs with their data elements\ + \ when only the specified data element is used." + docLink: "https://docs.openrewrite.org/recipes/java/migrate/dontoverfetchdto" + options: + - name: "dtoDataElement" + type: "String" + required: true + - name: "dtoType" + type: "String" + required: true + isImperative: true + artifactId: "rewrite-migrate-java" org.openrewrite.java.migrate.IBMSemeru: name: "org.openrewrite.java.migrate.IBMSemeru" description: "This recipe will apply changes commonly needed when upgrading\ @@ -7947,6 +8008,27 @@ rewrite-migrate-java: required: false isImperative: true artifactId: "rewrite-migrate-java" + org.openrewrite.java.migrate.search.FindDataUsedOnDto: + name: "org.openrewrite.java.migrate.search.FindDataUsedOnDto" + description: "Find data elements used on DTOs. This is useful to provide information\ + \ where data over-fetching may be a problem." + docLink: "https://docs.openrewrite.org/recipes/java/migrate/search/finddatausedondto" + options: + - name: "dtoType" + type: "String" + required: true + isImperative: true + artifactId: "rewrite-migrate-java" + org.openrewrite.java.migrate.search.FindDtoOverfetching: + name: "org.openrewrite.java.migrate.search.FindDtoOverfetching" + description: "Find methods that have 'opportunities' for improvement." + docLink: "https://docs.openrewrite.org/recipes/java/migrate/search/finddtooverfetching" + options: + - name: "dtoType" + type: "String" + required: true + isImperative: true + artifactId: "rewrite-migrate-java" org.openrewrite.java.migrate.sql.JavaSqlAPIs: name: "org.openrewrite.java.migrate.sql.JavaSqlAPIs" description: "Certain Java sql APIs have become deprecated and their usages\ @@ -8154,7 +8236,7 @@ rewrite-okhttp: artifactId: "rewrite-okhttp" rewrite-properties: artifactId: "rewrite-properties" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.properties.AddProperty: name: "org.openrewrite.properties.AddProperty" @@ -8243,7 +8325,7 @@ rewrite-properties: artifactId: "rewrite-properties" rewrite-python: artifactId: "rewrite-python" - version: "1.1.3" + version: "1.2.0" markdownRecipeDescriptors: org.openrewrite.python.ChangeMethodName: name: "org.openrewrite.python.ChangeMethodName" @@ -8424,7 +8506,7 @@ rewrite-recommendations: artifactId: "rewrite-recommendations" rewrite-spring: artifactId: "rewrite-spring" - version: "5.0.12" + version: "5.1.1" markdownRecipeDescriptors: org.openrewrite.gradle.spring.AddSpringDependencyManagementPlugin: name: "org.openrewrite.gradle.spring.AddSpringDependencyManagementPlugin" @@ -9491,6 +9573,13 @@ rewrite-spring: options: [] isImperative: false artifactId: "rewrite-spring" + org.openrewrite.java.spring.boot3.SpringBootProperties_3_2: + name: "org.openrewrite.java.spring.boot3.SpringBootProperties_3_2" + description: "Migrate properties found in `application.properties` and `application.yml`." + docLink: "https://docs.openrewrite.org/recipes/java/spring/boot3/springbootproperties_3_2" + options: [] + isImperative: false + artifactId: "rewrite-spring" org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_0: name: "org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_0" description: "Migrate applications to the latest Spring Boot 3.0 release. This\ @@ -9729,8 +9818,8 @@ rewrite-spring: artifactId: "rewrite-spring" org.openrewrite.java.spring.http.SimplifyMediaTypeParseCalls: name: "org.openrewrite.java.spring.http.SimplifyMediaTypeParseCalls" - description: "Replaces `MediaType.parseMediaType('application/json')` and `MediaType.valueOf('application/json')`\ - \ with `MediaType.APPLICATION_JSON`." + description: "Replaces `MediaType.parseMediaType(\"application/json\")` and\ + \ `MediaType.valueOf(\"application/json\")` with `MediaType.APPLICATION_JSON`." docLink: "https://docs.openrewrite.org/recipes/java/spring/http/simplifymediatypeparsecalls" options: [] isImperative: true @@ -10076,7 +10165,7 @@ rewrite-sql: artifactId: "rewrite-sql" rewrite-static-analysis: artifactId: "rewrite-static-analysis" - version: "1.0.9" + version: "1.1.0" markdownRecipeDescriptors: org.openrewrite.kotlin.StaticAnalysis: name: "org.openrewrite.kotlin.StaticAnalysis" @@ -12156,7 +12245,7 @@ rewrite-terraform: artifactId: "rewrite-terraform" rewrite-testing-frameworks: artifactId: "rewrite-testing-frameworks" - version: "2.0.13" + version: "2.1.0" markdownRecipeDescriptors: org.openrewrite.java.testing.assertj.AdoptAssertJDurationAssertions: name: "org.openrewrite.java.testing.assertj.AdoptAssertJDurationAssertions" @@ -12490,10 +12579,10 @@ rewrite-testing-frameworks: options: [] isImperative: true artifactId: "rewrite-testing-frameworks" - org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockitoWhen: - name: "org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockitoWhen" - description: "Rewrites JMockit `Expectations` to `Mockito.when`." - docLink: "https://docs.openrewrite.org/recipes/java/testing/jmockit/jmockitexpectationstomockitowhen" + org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockito: + name: "org.openrewrite.java.testing.jmockit.JMockitExpectationsToMockito" + description: "Rewrites JMockit `Expectations` blocks to Mockito statements." + docLink: "https://docs.openrewrite.org/recipes/java/testing/jmockit/jmockitexpectationstomockito" options: [] isImperative: true artifactId: "rewrite-testing-frameworks" @@ -12868,7 +12957,7 @@ rewrite-testing-frameworks: artifactId: "rewrite-testing-frameworks" rewrite-xml: artifactId: "rewrite-xml" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.xml.AddCommentToXmlTag: name: "org.openrewrite.xml.AddCommentToXmlTag" @@ -13074,7 +13163,7 @@ rewrite-xml: artifactId: "rewrite-xml" rewrite-yaml: artifactId: "rewrite-yaml" - version: "8.8.4" + version: "8.9.0" markdownRecipeDescriptors: org.openrewrite.yaml.AppendToSequence: name: "org.openrewrite.yaml.AppendToSequence"