Revert "Proguard config as files in L8"
This reverts commit 9715e5cf9e476b157d6d4f1f95bb924b520e3210.
Reason for revert: bot failures
Change-Id: Ic433ba296777ffd7514781426951f68760c969f3
diff --git a/src/main/java/com/android/tools/r8/L8Command.java b/src/main/java/com/android/tools/r8/L8Command.java
index 1373928..d1a8e6a 100644
--- a/src/main/java/com/android/tools/r8/L8Command.java
+++ b/src/main/java/com/android/tools/r8/L8Command.java
@@ -13,7 +13,6 @@
import com.android.tools.r8.utils.Pair;
import com.android.tools.r8.utils.Reporter;
import com.android.tools.r8.utils.StringDiagnostic;
-import java.nio.file.Path;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -151,8 +150,7 @@
@Keep
public static class Builder extends BaseCompilerCommand.Builder<L8Command, Builder> {
- private final List<Pair<List<String>, Origin>> proguardConfigStrings = new ArrayList<>();
- private final List<Path> proguardConfigFiles = new ArrayList<>();
+ private final List<Pair<List<String>, Origin>> proguardConfigs = new ArrayList<>();
private Builder() {
this(new DefaultL8DiagnosticsHandler());
@@ -164,7 +162,7 @@
public boolean isShrinking() {
// Answers true if keep rules, even empty, are provided.
- return !proguardConfigStrings.isEmpty() || !proguardConfigFiles.isEmpty();
+ return !proguardConfigs.isEmpty();
}
@Override
@@ -177,22 +175,10 @@
return CompilationMode.DEBUG;
}
- /** Add proguard configuration-file resources. */
- public Builder addProguardConfigurationFiles(Path... paths) {
- Collections.addAll(proguardConfigFiles, paths);
- return self();
- }
-
- /** Add proguard configuration-file resources. */
- public Builder addProguardConfigurationFiles(List<Path> paths) {
- proguardConfigFiles.addAll(paths);
- return self();
- }
-
/** Add proguard configuration. */
public Builder addProguardConfiguration(List<String> lines, Origin origin) {
- proguardConfigStrings.add(new Pair<>(lines, origin));
- return self();
+ proguardConfigs.add(new Pair<>(lines, origin));
+ return this;
}
@Override
@@ -252,10 +238,9 @@
inputs.getLibraryResourceProviders()) {
r8Builder.addLibraryResourceProvider(libraryResourceProvider);
}
- for (Pair<List<String>, Origin> proguardConfig : proguardConfigStrings) {
+ for (Pair<List<String>, Origin> proguardConfig : proguardConfigs) {
r8Builder.addProguardConfiguration(proguardConfig.getFirst(), proguardConfig.getSecond());
}
- r8Builder.addProguardConfigurationFiles(proguardConfigFiles);
r8Command = r8Builder.makeCommand();
} else {
D8Command.Builder d8Builder =
diff --git a/src/test/java/com/android/tools/r8/L8CommandTest.java b/src/test/java/com/android/tools/r8/L8CommandTest.java
index d13ef12..525a9ec 100644
--- a/src/test/java/com/android/tools/r8/L8CommandTest.java
+++ b/src/test/java/com/android/tools/r8/L8CommandTest.java
@@ -8,15 +8,9 @@
import static org.junit.Assert.assertTrue;
import com.android.tools.r8.dex.Marker;
-import com.android.tools.r8.origin.Origin;
import com.android.tools.r8.utils.AndroidApiLevel;
-import java.nio.charset.StandardCharsets;
-import java.nio.file.Files;
import java.nio.file.Path;
-import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
@@ -123,46 +117,4 @@
StringResource.fromFile(ToolHelper.DESUGAR_LIB_JSON_FOR_TESTING))
.build());
}
-
- @Test
- public void addProguardConfigurationString() throws Throwable {
- String keepRule = "-keep class java.time.*";
- List<String> keepRules = new ArrayList<>();
- keepRules.add(keepRule);
- L8Command.Builder builder =
- prepareBuilder(new TestDiagnosticMessagesImpl())
- .setProgramConsumer(DexIndexedConsumer.emptyConsumer())
- .addDesugaredLibraryConfiguration(
- StringResource.fromFile(ToolHelper.DESUGAR_LIB_JSON_FOR_TESTING))
- .addProguardConfiguration(keepRules, Origin.unknown());
- assertTrue(builder.isShrinking());
- assertNotNull(builder.build().getR8Command());
- }
-
- @Test
- public void addProguardConfigurationFile() throws Throwable {
- String keepRule = "-keep class java.time.*";
- Path keepRuleFile = temp.newFile("keepRuleFile.txt").toPath();
- Files.write(keepRuleFile, Collections.singletonList(keepRule), StandardCharsets.UTF_8);
-
- L8Command.Builder builder1 =
- prepareBuilder(new TestDiagnosticMessagesImpl())
- .setProgramConsumer(DexIndexedConsumer.emptyConsumer())
- .addDesugaredLibraryConfiguration(
- StringResource.fromFile(ToolHelper.DESUGAR_LIB_JSON_FOR_TESTING))
- .addProguardConfigurationFiles(keepRuleFile);
- assertTrue(builder1.isShrinking());
- assertNotNull(builder1.build().getR8Command());
-
- List<Path> keepRuleFiles = new ArrayList<>();
- keepRuleFiles.add(keepRuleFile);
- L8Command.Builder builder2 =
- prepareBuilder(new TestDiagnosticMessagesImpl())
- .setProgramConsumer(DexIndexedConsumer.emptyConsumer())
- .addDesugaredLibraryConfiguration(
- StringResource.fromFile(ToolHelper.DESUGAR_LIB_JSON_FOR_TESTING))
- .addProguardConfigurationFiles(keepRuleFiles);
- assertTrue(builder2.isShrinking());
- assertNotNull(builder2.build().getR8Command());
- }
}