From 99ec178292afb363e928454229dd4e397c8935f8 Mon Sep 17 00:00:00 2001 From: Tim te Beek Date: Sun, 2 Nov 2025 21:30:14 +0100 Subject: [PATCH 1/2] Move the `@InlineMe` recipes to rewrite-third-party --- .run/InlineMethodCallsRecipeGenerator.run.xml | 10 - .../resources/META-INF/rewrite/examples.yml | 20 - .../META-INF/rewrite/inline-guava-methods.yml | 402 ------------------ .../resources/META-INF/rewrite/no-guava.yml | 2 +- .../guava/NoGuavaInlineMeMethodsTest.java | 79 ---- 5 files changed, 1 insertion(+), 512 deletions(-) delete mode 100644 .run/InlineMethodCallsRecipeGenerator.run.xml delete mode 100644 src/main/resources/META-INF/rewrite/inline-guava-methods.yml delete mode 100644 src/test/java/org/openrewrite/java/migrate/guava/NoGuavaInlineMeMethodsTest.java diff --git a/.run/InlineMethodCallsRecipeGenerator.run.xml b/.run/InlineMethodCallsRecipeGenerator.run.xml deleted file mode 100644 index f8c37a2f2e..0000000000 --- a/.run/InlineMethodCallsRecipeGenerator.run.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/main/resources/META-INF/rewrite/examples.yml b/src/main/resources/META-INF/rewrite/examples.yml index deb427515b..a8eb8a00d7 100644 --- a/src/main/resources/META-INF/rewrite/examples.yml +++ b/src/main/resources/META-INF/rewrite/examples.yml @@ -3671,26 +3671,6 @@ examples: language: java --- type: specs.openrewrite.org/v1beta/example -recipeName: org.openrewrite.java.migrate.guava.NoGuavaInlineMeMethods -examples: -- description: '`NoGuavaInlineMeMethodsTest#stringsRegular`' - sources: - - before: | - import com.google.common.base.Strings; - class Regular { - String repeatString(String s, int n) { - return Strings.repeat(s, n); - } - } - after: | - class Regular { - String repeatString(String s, int n) { - return s.repeat(n); - } - } - language: java ---- -type: specs.openrewrite.org/v1beta/example recipeName: org.openrewrite.java.migrate.guava.NoGuavaIterablesAnyFilter examples: - description: '`NoGuavaIterablesAnyFilterTest#replaceIterablesAny`' diff --git a/src/main/resources/META-INF/rewrite/inline-guava-methods.yml b/src/main/resources/META-INF/rewrite/inline-guava-methods.yml deleted file mode 100644 index fc77727f88..0000000000 --- a/src/main/resources/META-INF/rewrite/inline-guava-methods.yml +++ /dev/null @@ -1,402 +0,0 @@ -# Copyright 2025 the original author or authors. -#

-# 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 -#

-# https://docs.moderne.io/licensing/moderne-source-available-license -#

-# 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. -# -# Generated InlineMe recipes from TypeTable -# - -type: specs.openrewrite.org/v1beta/recipe -name: org.openrewrite.java.migrate.guava.NoGuavaInlineMeMethods -displayName: Inline methods annotated with `@InlineMe` -description: >- - Automatically generated recipes to inline method calls based on `@InlineMe` annotations - discovered in the type table. -recipeList: - - # From com.google.guava:guava:33.5.0-jre - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Booleans hashCode(boolean)' - replacement: 'Boolean.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Booleans compare(boolean, boolean)' - replacement: 'Boolean.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Longs hashCode(long)' - replacement: 'Long.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Longs compare(long, long)' - replacement: 'Long.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Ints hashCode(int)' - replacement: 'Integer.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Ints compare(int, int)' - replacement: 'Integer.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.graph.ImmutableValueGraph copyOf(com.google.common.graph.ImmutableValueGraph)' - replacement: 'checkNotNull(graph)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Doubles hashCode(double)' - replacement: 'Double.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Doubles compare(double, double)' - replacement: 'Double.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Doubles isFinite(double)' - replacement: 'Double.isFinite(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Streams stream(java.util.Collection)' - replacement: 'collection.stream()' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Streams stream(java.util.Optional)' - replacement: 'optional.stream()' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Streams stream(java.util.OptionalInt)' - replacement: 'optional.stream()' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Streams stream(java.util.OptionalLong)' - replacement: 'optional.stream()' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Streams stream(java.util.OptionalDouble)' - replacement: 'optional.stream()' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Range apply(java.lang.Comparable)' - replacement: 'this.contains(input)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Range test(java.lang.Comparable)' - replacement: 'this.contains(input)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.FluentIterable from(com.google.common.collect.FluentIterable)' - replacement: 'checkNotNull(iterable)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.ImmutableList asList()' - replacement: 'this' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Chars hashCode(char)' - replacement: 'Character.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Chars compare(char, char)' - replacement: 'Character.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.TreeBasedTable rowComparator()' - replacement: 'requireNonNull(this.rowKeySet().comparator())' - staticImports: - - 'java.util.Objects.requireNonNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Multisets unmodifiableMultiset(com.google.common.collect.ImmutableMultiset)' - replacement: 'checkNotNull(multiset)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Iterators unmodifiableIterator(com.google.common.collect.UnmodifiableIterator)' - replacement: 'checkNotNull(iterator)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Iterators peekingIterator(com.google.common.collect.PeekingIterator)' - replacement: 'checkNotNull(iterator)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Ordering from(com.google.common.collect.Ordering)' - replacement: 'checkNotNull(ordering)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Ordering binarySearch(java.util.List, java.lang.Object)' - replacement: 'Collections.binarySearch(sortedList, key, this)' - imports: - - 'java.util.Collections' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Bytes hashCode(byte)' - replacement: 'Byte.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Multimaps unmodifiableMultimap(com.google.common.collect.ImmutableMultimap)' - replacement: 'checkNotNull(delegate)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Multimaps unmodifiableSetMultimap(com.google.common.collect.ImmutableSetMultimap)' - replacement: 'checkNotNull(delegate)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Multimaps unmodifiableListMultimap(com.google.common.collect.ImmutableListMultimap)' - replacement: 'checkNotNull(delegate)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.base.Equivalence test(java.lang.Object, java.lang.Object)' - replacement: 'this.equivalent(t, u)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Sets newSetFromMap(java.util.Map)' - replacement: 'Collections.newSetFromMap(map)' - imports: - - 'java.util.Collections' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Lists newCopyOnWriteArrayList()' - replacement: 'new CopyOnWriteArrayList<>()' - imports: - - 'java.util.concurrent.CopyOnWriteArrayList' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.base.Strings repeat(java.lang.String, int)' - replacement: 'string.repeat(count)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.hash.BloomFilter apply(java.lang.Object)' - replacement: 'this.mightContain(input)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.hash.BloomFilter test(java.lang.Object)' - replacement: 'this.mightContain(input)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.base.CharMatcher apply(java.lang.Character)' - replacement: 'this.matches(character)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.base.CharMatcher test(java.lang.Character)' - replacement: 'this.matches(character)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.ComparisonChain compare(java.lang.Boolean, java.lang.Boolean)' - replacement: 'this.compareFalseFirst(left, right)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files toString(java.io.File, java.nio.charset.Charset)' - replacement: 'Files.asCharSource(file, charset).read()' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files write(java.lang.CharSequence, java.io.File, java.nio.charset.Charset)' - replacement: 'Files.asCharSink(to, charset).write(from)' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files copy(java.io.File, java.nio.charset.Charset, java.lang.Appendable)' - replacement: 'Files.asCharSource(from, charset).copyTo(to)' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files append(java.lang.CharSequence, java.io.File, java.nio.charset.Charset)' - replacement: 'Files.asCharSink(to, charset, FileWriteMode.APPEND).write(from)' - imports: - - 'com.google.common.io.FileWriteMode' - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files readFirstLine(java.io.File, java.nio.charset.Charset)' - replacement: 'Files.asCharSource(file, charset).readFirstLine()' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files readLines(java.io.File, java.nio.charset.Charset, com.google.common.io.LineProcessor)' - replacement: 'Files.asCharSource(file, charset).readLines(callback)' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files readBytes(java.io.File, com.google.common.io.ByteProcessor)' - replacement: 'Files.asByteSource(file).read(processor)' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.io.Files hash(java.io.File, com.google.common.hash.HashFunction)' - replacement: 'Files.asByteSource(file).hash(hashFunction)' - imports: - - 'com.google.common.io.Files' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.util.concurrent.FluentFuture from(com.google.common.util.concurrent.FluentFuture)' - replacement: 'checkNotNull(future)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.base.Converter apply(java.lang.Object)' - replacement: 'this.convert(a)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Shorts hashCode(short)' - replacement: 'Short.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Shorts compare(short, short)' - replacement: 'Short.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.graph.ImmutableGraph copyOf(com.google.common.graph.ImmutableGraph)' - replacement: 'checkNotNull(graph)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Floats hashCode(float)' - replacement: 'Float.hashCode(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Floats compare(float, float)' - replacement: 'Float.compare(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.Floats isFinite(float)' - replacement: 'Float.isFinite(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.collect.Iterables unmodifiableIterable(com.google.common.collect.ImmutableCollection)' - replacement: 'checkNotNull(iterable)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.primitives.UnsignedBytes toInt(byte)' - replacement: 'Byte.toUnsignedInt(value)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.graph.ImmutableNetwork copyOf(com.google.common.graph.ImmutableNetwork)' - replacement: 'checkNotNull(network)' - staticImports: - - 'com.google.common.base.Preconditions.checkNotNull' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.LongMath checkedAdd(long, long)' - replacement: 'Math.addExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.LongMath checkedSubtract(long, long)' - replacement: 'Math.subtractExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.LongMath checkedMultiply(long, long)' - replacement: 'Math.multiplyExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.IntMath checkedAdd(int, int)' - replacement: 'Math.addExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.IntMath checkedSubtract(int, int)' - replacement: 'Math.subtractExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' - - org.openrewrite.java.InlineMethodCalls: - methodPattern: 'com.google.common.math.IntMath checkedMultiply(int, int)' - replacement: 'Math.multiplyExact(a, b)' - classpathFromResources: - - 'guava-33.5.0-jre' diff --git a/src/main/resources/META-INF/rewrite/no-guava.yml b/src/main/resources/META-INF/rewrite/no-guava.yml index 915baaf479..3c5239af2a 100644 --- a/src/main/resources/META-INF/rewrite/no-guava.yml +++ b/src/main/resources/META-INF/rewrite/no-guava.yml @@ -25,12 +25,12 @@ description: >- tags: - guava recipeList: + - com.google.guava.InlineGuavaMethods - org.openrewrite.java.migrate.guava.NoGuavaJava11 - org.openrewrite.java.migrate.guava.NoGuavaJava21 - org.openrewrite.java.migrate.guava.NoGuavaCreateTempDir - org.openrewrite.java.migrate.guava.NoGuavaDirectExecutor - org.openrewrite.java.migrate.guava.NoGuavaFunctionsCompose - - org.openrewrite.java.migrate.guava.NoGuavaInlineMeMethods - org.openrewrite.java.migrate.guava.NoGuavaIterablesAnyFilter - org.openrewrite.java.migrate.guava.NoGuavaIterablesTransform - org.openrewrite.java.migrate.guava.NoGuavaCollections2Transform diff --git a/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaInlineMeMethodsTest.java b/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaInlineMeMethodsTest.java deleted file mode 100644 index fd74232aae..0000000000 --- a/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaInlineMeMethodsTest.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2025 the original author or authors. - *

- * 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 - *

- * https://docs.moderne.io/licensing/moderne-source-available-license - *

- * 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. - */ -package org.openrewrite.java.migrate.guava; - -import org.junit.jupiter.api.Test; -import org.openrewrite.DocumentExample; -import org.openrewrite.test.RecipeSpec; -import org.openrewrite.test.RewriteTest; - -import static org.openrewrite.java.Assertions.java; - -class NoGuavaInlineMeMethodsTest implements RewriteTest { - - @Override - public void defaults(RecipeSpec spec) { - spec.recipeFromResources( - "org.openrewrite.java.migrate.guava.NoGuavaInlineMeMethods"); - } - - @DocumentExample - @Test - void stringsRegular() { - rewriteRun( - java( - """ - import com.google.common.base.Strings; - class Regular { - String repeatString(String s, int n) { - return Strings.repeat(s, n); - } - } - """, - """ - class Regular { - String repeatString(String s, int n) { - return s.repeat(n); - } - } - """ - ) - ); - } - - @Test - void stringsStaticImport() { - rewriteRun( - java( - """ - import static com.google.common.base.Strings.repeat; - class StaticImport { - String repeatString(String s, int n) { - return repeat(s, n); - } - } - """, - """ - class StaticImport { - String repeatString(String s, int n) { - return s.repeat(n); - } - } - """ - ) - ); - } -} From 7b9075f4b65693379f16fa8c55ba860a293bdf9c Mon Sep 17 00:00:00 2001 From: Tim te Beek Date: Sun, 2 Nov 2025 23:21:27 +0100 Subject: [PATCH 2/2] Add `rewrite-third-party` dependency --- build.gradle.kts | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle.kts b/build.gradle.kts index f543c37cc7..aa3f3b2c9b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -56,6 +56,7 @@ dependencies { implementation("org.openrewrite.recipe:rewrite-java-dependencies:$rewriteVersion") implementation("org.openrewrite.recipe:rewrite-static-analysis:$rewriteVersion") implementation("org.openrewrite.recipe:rewrite-jenkins:$rewriteVersion") + implementation("org.openrewrite.recipe:rewrite-third-party:${rewriteVersion}") implementation("org.openrewrite:rewrite-templating:$rewriteVersion") implementation("org.openrewrite.meta:rewrite-analysis:$rewriteVersion")