Make --experimental_android_use_nocompress_extensions_on_apk a no-op.
RELNOTES: android_binary.nocompress_extensions now applies to all files in the
APK, not just resources and assets.
PiperOrigin-RevId: 167859686
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
index ccc5b4c..9b95e95 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java
@@ -666,10 +666,8 @@
name = "experimental_android_use_nocompress_extensions_on_apk",
defaultValue = "false",
documentationCategory = OptionDocumentationCategory.UNDOCUMENTED,
- effectTags = {OptionEffectTag.UNKNOWN},
- help =
- "Use the value of nocompress_extensions attribute with the SingleJar "
- + "--nocompress_suffixes flag when building the APK."
+ effectTags = {OptionEffectTag.NO_OP},
+ help = "This flag is deprecated and has no effect. It will be removed in a future release."
)
public boolean useNocompressExtensionsOnApk;
@@ -807,7 +805,6 @@
private final ResourceFilter resourceFilter;
private final boolean compressJavaResources;
private final boolean includeLibraryResourceJars;
- private final boolean useNocompressExtensionsOnApk;
private final boolean exportsManifestDefault;
private final AndroidAaptVersion androidAaptVersion;
private final boolean generateRobolectricRClass;
@@ -847,7 +844,6 @@
this.resourceFilter = options.resourceFilter;
this.compressJavaResources = options.compressJavaResources;
this.includeLibraryResourceJars = options.includeLibraryResourceJars;
- this.useNocompressExtensionsOnApk = options.useNocompressExtensionsOnApk;
this.exportsManifestDefault = options.exportsManifestDefault;
this.androidAaptVersion = options.androidAaptVersion;
this.generateRobolectricRClass = options.generateRobolectricRClass;
@@ -974,10 +970,6 @@
return includeLibraryResourceJars;
}
- boolean useNocompressExtensionsOnApk() {
- return useNocompressExtensionsOnApk;
- }
-
boolean getExportsManifestDefault() {
return exportsManifestDefault;
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
index 7c1b8aa..bd1f60e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
@@ -333,8 +333,7 @@
ImmutableList<String> noCompressExtensions =
ruleContext.getTokenizedStringListAttr("nocompress_extensions");
- if (ruleContext.getFragment(AndroidConfiguration.class).useNocompressExtensionsOnApk()
- && !noCompressExtensions.isEmpty()) {
+ if (!noCompressExtensions.isEmpty()) {
compressedApkCommandLine.addAll("--nocompress_suffixes", noCompressExtensions);
singleJarCommandLine.addAll("--nocompress_suffixes", noCompressExtensions);
}
diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java
index 95a7c2a..f6398bc 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java
@@ -3046,21 +3046,6 @@
"--primaryData", "java/r/android/res::" + inputManifest.getExecPathString()));
assertThat(args).contains("--uncompressedExtensions");
assertThat(args.get(args.indexOf("--uncompressedExtensions") + 1)).isEqualTo(".apk,.so");
- }
-
- @Test
- public void testNocompressExtensions_useNocompressExtensionsOnApk() throws Exception {
- scratch.file(
- "java/r/android/BUILD",
- "android_binary(",
- " name = 'r',",
- " srcs = ['Foo.java'],",
- " manifest = 'AndroidManifest.xml',",
- " resource_files = ['res/raw/foo.apk'],",
- " nocompress_extensions = ['.apk', '.so'],",
- ")");
- useConfiguration("--experimental_android_use_nocompress_extensions_on_apk");
- ConfiguredTarget binary = getConfiguredTarget("//java/r/android:r");
assertThat(getGeneratingSpawnActionArgs(getCompressedUnsignedApk(binary)))
.containsAllOf("--nocompress_suffixes", ".apk", ".so")
.inOrder();