8.94.0 release (2026-10-27)
Total recipe count: 4331
Info
This changelog only shows what recipes have been added, removed, or changed. OpenRewrite may do releases that do not include these types of changes. To see these changes, please go to the releases page.
Corresponding CLI version
- CLI version
4.11.1
Removed Artifacts
- rewrite-feature-flags
New Recipes
- io.quarkus.updates.core.quarkus40.AddPriorityToReserveAnnotation: Beans migrated from
@DefaultBeanto@Reserveneed@Priority(0)unless they already have a@Priorityannotation. - io.quarkus.updates.core.quarkus40.ArcDefaultBeanToReserve: Replace ArC's @DefaultBean annotation with CDI 5.0's @Reserve annotation and add @Priority(0) if not already present. Also replace InjectableBean.isDefaultBean() with Bean.isReserve().
- io.quarkus.updates.core.quarkus40.ArcExtensionApiRemovals: Replace ArC processor and Quarkus deployment APIs that were deprecated in Quarkus 3.x and removed in Quarkus 4.0.
- io.quarkus.updates.core.quarkus40.DroppedRelocations: Rename artifacts whose relocations have been dropped in Quarkus 4.0. These relocations were introduced in Quarkus 3.x and are no longer available.
- io.quarkus.updates.core.quarkus40.FlywayMongoDBDependencyRename: Flyway renamed flyway-database-mongodb to flyway-database-nc-mongodb in version 13.
- io.quarkus.updates.core.quarkus40.MicrometerPrometheusMetrics: Quarkus 4.0 switches from
micrometer-registry-prometheus-simpleclienttomicrometer-registry-prometheus, whose classes live in theio.micrometer.prometheusmetricspackage and usePrometheusRegistryinstead ofCollectorRegistry. - org.openrewrite.apache.commons.collections.CollectionUtilsCardinalityToFrequency: Replace attributed Java invocations of Commons Collections 4
cardinalitywhenIterableUtilsis present on the source set classpath (Commons Collections 4.1 or later). Preserve null iterable rejection withObjects.requireNonNull, requiring Java 7 or later. Only local variables, parameters and literals with a class qualifier or static import are migrated. Other argument expressions, expression qualifiers, explicit type arguments and method references are retained to preserve evaluation and typing. - org.openrewrite.github.SetupGoUpgradeGoVersion: Update the Go version used by
actions/setup-goif it is below the expected version number. Astrategy.matrixaxis that feedsgo-versiongets the expected version added when none of its values reach it. - org.openrewrite.gradle.ExcludeDependency: Exclude the specified dependency from any direct dependency declaration that transitively includes it. The exclusion is attached to each matching direct dependency, mirroring Maven's per-dependency
<exclusions>behavior. Supports both Groovy and Kotlin DSL build scripts. - org.openrewrite.gradle.RemoveDuplicateDependencies: Removes duplicated dependency declarations from the
dependenciesblock ofbuild.gradleandbuild.gradle.ktsfiles. A declaration is only considered a duplicate when an earlier declaration in the samedependenciesblock uses the same configuration and the same coordinates, including version, classifier and extension, whether those are written as a single string or as separate arguments. Declarations that differ only by version are left untouched. - org.openrewrite.gradle.RemoveExclusion: Removes
excludedeclarations of the given dependency from Gradle build scripts, the inverse ofExcludeDependency. Covers excludes on a dependency declaration and on configurations, in both the Groovy and Kotlin DSL. An exclude that leaves out the group also matches, as it excludes the given artifact as well. An exclude of a whole group only matches when the artifact is left out, as removing it would bring back every other module of the group too. A closure the removal leaves empty is removed too. - org.openrewrite.gradle.RemoveExtraProperty: Gradle's ExtraPropertiesExtension is a commonly used mechanism for setting arbitrary key/value pairs on a project. This recipe removes every assignment of the property with the given key, whatever its value, such as
ext.foo = 'bar',ext['foo'] = 'bar',ext.set('foo', 'bar'), an assignment in anext { }block, or Kotlin'sextra["foo"] = "bar"andval foo by extra("bar"). Anext { }block left empty is removed as well. Reads of the property are left as they are. - org.openrewrite.hcl.AddContent: Add an attribute or a block to HCL blocks selected by a JSONPath expression, unless an attribute with the same name or a block with the same type and labels is already there. Existing values are left unchanged, use
ChangeValueto change them. - org.openrewrite.hcl.ChangeKey: Rename an HCL attribute while leaving its value intact. Attributes with a computed key, or with a sibling attribute or block already named
newKey, are left unchanged. - org.openrewrite.hcl.ChangeValue: Change the value of an HCL attribute while leaving its key intact. The new value replaces the whole existing expression, unless
regexis enabled. - org.openrewrite.hibernate.ChangeHibernateDialect: Change a Hibernate dialect type and its configuration in properties, YAML,
persistence.xmlandhibernate.cfg.xml. XML changes are limited to dialect properties in standard persistence descriptors and Hibernate configuration files. - org.openrewrite.hibernate.MigratePersistenceXmlToJakartaPersistence32: Update Jakarta Persistence 3.0 and 3.1 descriptors named
persistence.xmlto 3.2. Preserve newer descriptors, namespace prefixes and unrelated schema locations. - org.openrewrite.java.dependencies.ExcludeDependency: Exclude the specified dependency from any direct dependency that transitively includes it. For a Gradle project, adds an
excludeto the declaration's closure inbuild.gradleorbuild.gradle.kts. For a Maven project, adds an<exclusion>to the dependency in thepom.xml. - org.openrewrite.java.dependencies.RemoveExclusion: Remove exclusions of the specified dependency, the inverse of
ExcludeDependency. For a Gradle project, removesexcludedeclarations from dependency and configuration closures inbuild.gradleorbuild.gradle.kts. For a Maven project, removes the<exclusion>from dependencies and managed dependencies in thepom.xml. - org.openrewrite.java.jackson.JsonNodeTextValueToStringValue: In Jackson 2,
JsonNode.textValue()returnsnullfor nodes that are not textual. In Jackson 3,textValue()delegates tostringValue(), which throws for nodes that are not strings.stringValue(null)keeps the Jackson 2 behavior of returningnull. - org.openrewrite.java.jackson.ObjectCodecToReadWriteContext: Jackson 3 removes
ObjectCodec.JsonParser.getCodec()becomesobjectReadContext(), which returns anObjectReadContext, andJsonGenerator.getCodec()becomesobjectWriteContext(), which returns anObjectWriteContext. This recipe changes the declared type of variables initialized from those calls, so the declaration still compiles after the migration. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDatabindDependency: Add
tools.jackson.core:jackson-databindto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.core:jackson-databindtransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatAvroDependency: Add
tools.jackson.dataformat:jackson-dataformat-avroto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-avrotransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatCborDependency: Add
tools.jackson.dataformat:jackson-dataformat-cborto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-cbortransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatCsvDependency: Add
tools.jackson.dataformat:jackson-dataformat-csvto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-csvtransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatIonDependency: Add
tools.jackson.dataformat:jackson-dataformat-ionto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-iontransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatProtobufDependency: Add
tools.jackson.dataformat:jackson-dataformat-protobufto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-protobuftransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatSmileDependency: Add
tools.jackson.dataformat:jackson-dataformat-smileto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-smiletransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatXmlDependency: Add
tools.jackson.dataformat:jackson-dataformat-xmlto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-xmltransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_AddDataformatYamlDependency: Add
tools.jackson.dataformat:jackson-dataformat-yamlto modules whose sources use its Jackson 2 types, but only getcom.fasterxml.jackson.dataformat:jackson-dataformat-yamltransitively. Jackson 2 artifacts that are declared directly are upgraded instead. - org.openrewrite.java.jackson.UpgradeJackson_2_3_RestAssured: REST Assured 6 configures Jackson 3 through
jackson3ObjectMapperFactoryandObjectMapperType.JACKSON_3, next to their Jackson 2 counterparts, which do not accept a Jackson 3ObjectMapper. - org.openrewrite.java.migrate.AddAspectJToolsToAspectJMavenPlugin: Pins
aspectjtools1.9.25.1 on thedev.aspectj:aspectj-maven-plugin, as the AspectJ compiler bundled with the plugin is too old to read Java 25 bytecode. An existingaspectjtoolsplugin dependency is left as is, rather than being reset to this version. - org.openrewrite.java.migrate.AddLombokAnnotationProcessorPath: Add the
lombokannotation processor path, matching the version of thelombokdependency. OnceannotationProcessorPathsis configured, javac no longer discovers annotation processors on the classpath, so Lombok has to be listed there explicitly to keep running. - org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$Collections2TransformRecipe: Prefer
Collection.stream().map(Function)overCollections2.transform(Collection, Function). - org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$IterablesAllRecipe: Prefer
Collection.stream().allMatch(Predicate)overIterables.all(Collection, Predicate). - org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewArrayListFromCollectionRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewArrayListRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewArrayListWithCapacityRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewCopyOnWriteArrayListFromCollectionRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewCopyOnWriteArrayListRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewLinkedListFromCollectionRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$ListsNewLinkedListRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewHashMapFromMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewHashMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewLinkedHashMapFromMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewLinkedHashMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewTreeMapFromSortedMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewTreeMapRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$MapsNewTreeMapWithComparatorRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$SetsNewConcurrentHashSetRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$SetsNewLinkedHashSetFromCollectionRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$SetsNewLinkedHashSetRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.guava.NoGuavaRefasterRecipes$SetsNewLinkedHashSetWithExpectedSizeRecipe: Prefer the Java standard library over third-party usage of Guava in simple cases like this.
- org.openrewrite.java.migrate.jspecify.RemoveAnnotationFromVoidMethod: Nullability annotations are meaningless on methods returning
void, and type-use annotations such as JSpecify's@Nullableare not permitted there. This recipe removes such annotations so they are not carried over by a laterChangeType. - org.openrewrite.java.migrate.search.FindCompletableFutureDefaultExecutor: Finds
CompletableFutureandCompletionStage*Asynccalls that don't pass anExecutor, andCompletableFuture.delayedExecutorcalls without a baseExecutor. These run onForkJoinPool.commonPool(). Before JDK 25, a common pool with parallelism of 1 or less (e.g. on a 2-CPU host) madeCompletableFuturefall back to a new thread per task; from JDK 25 that fallback is gone, so blocking work queues behind a single worker thread. Calls that passForkJoinPool.commonPool()explicitly are also found, because they got the same fallback before JDK 25. Review each call and pass a dedicatedExecutorwhere the task blocks. - org.openrewrite.java.recipes.DeclarativeRecipeBestPractices: Best practices for declarative YAML recipe development.
- org.openrewrite.java.recipes.EndDeclarativeRecipeDescriptionsWithPeriod: Append a period to the
descriptionof declarative YAML recipes, as is expected of recipe descriptions. Descriptions that already end in punctuation, or end in a code fence, table or list of links, are left as is. - org.openrewrite.java.recipes.FindSharedVisitorInstances: Find
staticfields, and instance fields ofRecipeclasses, holdingTreeVisitorinstances.getVisitor()is called once per source file and source files may be visited concurrently, so a shared visitor that walks the tree has its cursor, visit count and after-visit list corrupted by concurrent visits. Construct such visitors insidegetVisitor()instead. Fields holding only visitors which keep no per-visit state, such asUsesTypecombined throughPreconditions.or/and/not, are not reported. - org.openrewrite.java.recipes.ListUtilsFilterOverMapToNull: Replaces
ListUtils.map(list, e -> condition ? null : e)and the equivalent block lambdas withListUtils.filter(list, e -> !condition), which states the intent of removing elements directly. - org.openrewrite.java.recipes.LowercaseVersionWildcards: Replace an uppercase
Xwildcard in theversionandnewVersionoptions of declarative YAML recipes, such as2.0.X, with the conventional lowercase2.0.x. - org.openrewrite.java.recipes.RemoveConsecutiveDuplicateRecipes: Remove an entry from the
recipeListorpreconditionsof a declarative YAML recipe when it repeats the entry right before it, with the same recipe name and options, as running it twice in a row has no effect. Duplicates further apart are kept, as the recipes in between can produce new matches for the repeated recipe. - org.openrewrite.java.recipes.RemoveEmptyRecipeOptions: Remove the trailing colon, or
: {}, from entries in therecipeListorpreconditionsof a declarative YAML recipe that configure no options, to list just the recipe name. - org.openrewrite.java.recipes.SimplifyRecipeSpecCycles: Removes a
cycles(int)call on aRecipeSpecwhose value equals the number of cyclesrewriteRunruns without it, which is one more thanexpectedCyclesThatMakeChanges(int)and at least two. A cycle count pinned to the expected count is left alone, since removing it adds the cycle that verifies the recipe settled. - org.openrewrite.java.recipes.StaticFinalMatcherFields: Instance fields of recipes and visitors holding a
MethodMatcher,AnnotationMatcherorTypeMatcherbuilt only from constants are recreated, and their pattern parsed again, for every instance. Make suchprivate finalfieldsprivate static finalconstants with an upper snake case name. - org.openrewrite.java.recipes.UnconditionalMaybeImport:
maybeAddImportonly adds an import when the type is referenced, andmaybeRemoveImportonly removes one when the type is no longer referenced, so wrapping these calls in anifstatement is redundant. Unwrapsifstatements without anelsethat contain only such calls, when the condition and arguments have no side effects and the condition does not guard the arguments. Guards comparing trees by identity, such asif (cu != c), are kept, as are calls passingonlyIfReferencedas anything other thantrue. - org.openrewrite.java.recipes.UseMethodMatcherPreconditions: Pass an existing
static finalMethodMatcherfield toUsesMethodandDeclaresMethodinstead of repeating its method pattern andmatchOverridesflag. Also replacenew FindMethods(..).getVisitor()andnew FindMethodDeclaration(..).getVisitor()preconditions withUsesMethodandDeclaresMethod, which only consult the types in use of a source file. - org.openrewrite.java.recipes.UseVisitorReduce: Replaces an accumulator that is declared, passed to
TreeVisitor#visitand only read afterwards with a call toTreeVisitor#reduce, which returns the accumulator it was given. When the accumulator is read only once, right after the visit, thereducecall is inlined at that read. - org.openrewrite.java.spring.boot2.search.FindIntegrationSchedulerPool: Spring Integration now reuses an available
TaskSchedulerrather than configuring its own. In a typical application setup relying on the auto-configuration, this means that Spring Integration uses the auto-configured task scheduler that has a pool size of 1. To restore Spring Integration’s default of 10 threads, use thespring.task.scheduling.pool.sizeproperty. - org.openrewrite.java.testing.cleanup.FindTestClassesWithoutTests: Finds classes in test sources that are named
*Test,*Testsor*TestCase, or extend JUnit 3TestCase, but contain no tests. Such classes suggest that code is tested when it is not. - org.openrewrite.java.testing.easymock.EasyMockCodeToMockito: Change EasyMock types, mock creation, expectations and argument matchers to their Mockito equivalents, and remove replay and verify calls.
- org.openrewrite.java.testing.junit5.AddJupiterMigrationSupport: Adds
junit-jupiter-migrationsupportto modules whose JUnit 4ExternalResourcerules the JUnit 4 to 5 migration keeps with@ExtendWith(ExternalResourceSupport.class). - org.openrewrite.java.testing.junit5.WireMockRuleToWireMockServer: Replace a
WireMockRulethat is started, stopped or passed on as aWireMockServerwith a plainWireMockServer, as the JUnit 5WireMockExtensionhas no such methods. The server is started and stopped around each test, or around all tests for a@ClassRule. - org.openrewrite.java.testing.mockito.ChangeMockitoAllToMockitoCoreReplacingPowerMock: Changes a declared
mockito-allintomockito-core, asmockito-allis a 1.x-only uber jar with no 3.x release to upgrade to. This runs before the PowerMock dependencies are replaced, so that a module which declaredmockito-allis seen to declaremockito-coreand does not get it a second time. - org.openrewrite.java.testing.truth.TruthCodeToAssertJ: Convert Google Truth assertions, subject types and their methods to AssertJ equivalents.
- org.openrewrite.java.testing.wiremock.MigrateJettyEE10ToEE11: WireMock 3's
wiremock-jetty12module ran on Jetty's EE10 servlet environment, whereas WireMock 4.x runs on EE11, so EE10 types such as theServletContextHandlerhanded toNotFoundHandlerno longer line up. Move EE10 packages and dependencies over to their EE11 counterparts, but only in modules depending onwiremock-jetty12, where EE10 arrived through WireMock in the first place. - org.openrewrite.java.testing.wiremock.Wiremock4RelocatedTypes: Change WireMock types that moved packages in WireMock 4.x, such as the Jetty, servlet and Apache HTTP client classes.
- org.openrewrite.javascript.search.ModuleHasDependency: Searches for Node.js packages that have an npm dependency matching the specified package name. Places a
SearchResultmarker on all sources within a package with a matching dependency. A source belongs to thepackage.jsonin its nearest enclosing directory, so each member of a workspace is its own module. This recipe is intended to be used as a precondition for other recipes. For example this could be used to limit the application of a migration to only packages that use a specific version of a library. If the search result you want is instead just the dependency entry inpackage.json, use theDependencyInsightrecipe instead. - org.openrewrite.maven.RemoveInvalidParentRelativePath: Maven 3.10 and 4 fail the build when a parent
<relativePath>contains any of the characters: " < > | ? *, which typically means agroupId:artifactId:versionwas entered instead of a path. Earlier Maven versions found no POM at such a path and resolved the parent from the repository. This recipe replaces the value with an empty<relativePath/>, which tells Maven to do exactly that. - org.openrewrite.maven.UpdateProjectUrlFromGitOrigin: Updates the Maven project
<url>based on the Git remote origin. Only POMs whose parent is not in the same repository are updated, as modules typically inherit or extend the parent's URL. - org.openrewrite.quarkus.spring.ModuleIsSpringBootApplication: Marks all sources in modules that run on Spring Boot 3.x or 4.x (including snapshots and milestones), apply the Spring Boot build plugin and have a
mainmethod on a class annotated with@SpringBootApplicationor@SpringBootConfigurationin the main source set, as well as the Maven parents of those modules and the modules they depend on at runtime. Projects nested undersrc/*/resources, such as test fixtures, are never marked; only configuration files directly in a resources directory or itsconfigdirectory are. Intended as a precondition, so that libraries and framework code are not migrated as if they were applications. - org.openrewrite.staticanalysis.FindNonCaseLabelsInSwitch: Marks statement labels placed directly among the
caselabels of aswitch. Such a label is often acasewith a missing keyword, which compiles but never matches, or a labeled loop whosebreakis easily misread as leaving theswitch. Labels nested in a block or statement within a case are not marked. Review these before runningRemoveUnusedLabels, which would remove unused ones. - org.openrewrite.staticanalysis.IsEmptyCallOnMaps: Replaces comparisons of
Map#size()to zero withisEmpty(), or with!isEmpty()when testing for a non-zero size. UsingisEmpty()communicates intent more clearly than comparingsize()to zero, and for some map implementationsisEmpty()can be more efficient sincesize()may require traversal. - org.openrewrite.staticanalysis.RemoveUnnecessaryBitwiseOperation: Remove bitwise operations that always yield their other operand:
x & -1,x | 0andx ^ 0are all justx. Compound assignments such asx |= 0are replaced byxwhere their value is used, and removed where they stand alone as a statement.
Removed Recipes
- org.openrewrite.java.spring.boot2.search.IntegrationSchedulerPoolRecipe: Spring Integration now reuses an available
TaskSchedulerrather than configuring its own. In a typical application setup relying on the auto-configuration, this means that Spring Integration uses the auto-configured task scheduler that has a pool size of 1. To restore Spring Integration’s default of 10 threads, use thespring.task.scheduling.pool.sizeproperty.
Changed Recipes
org.openrewrite.github.security.PinGitHubActionsToSha was changed:
| Option | Type | Required | Change |
|---|---|---|---|
githubApiToken | String | No | Removed |
org.openrewrite.java.dependencies.search.ModuleHasDependency was changed:
| Option | Type | Required | Change |
|---|---|---|---|
onlyDirect | Boolean | No | Added |
org.openrewrite.maven.RemoveRedundantProperties was changed:
| Option | Type | Required | Change |
|---|---|---|---|
onlyIfParentValueIs | Comparator | No | Added |
org.openrewrite.java.migrate.JREThrowableFinalMethods was changed:
| Option | Type | Required | Change |
|---|---|---|---|
methodPatternAddSuppressed | String | No | Added |
methodPatternGetSuppressed | String | No | Added |
org.openrewrite.java.migrate.UseJavaUtilBase64 was changed:
| Option | Type | Required | Change |
|---|---|---|---|
sunPackage | String | No | Added |
org.openrewrite.java.migrate.jakarta.UpdateAnnotationAttributeJavaxToJakarta was changed:
| Option | Type | Required | Change |
|---|---|---|---|
signature | String | No → Yes | Changed |