Merge #565 by erikackermann: Return ProguardMappingInfo from the Starlark R8 path ## Summary The Starlark R8 processor writes a proguard mapping file via `--pg-map-output`, but `process_r8` never returned `ProguardMappingInfo`. `android_application` reads that provider from `base_module` to embed the mapping in AAB `BUNDLE-METADATA` for Play Console deobfuscation, so AAB builds using the R8 path shipped without the mapping. Return `ProguardMappingInfo(proguard_mapping = proguard_mappings_output_file)` from the R8 providers list, matching the legacy postprocessing path in `android_binary/impl.bzl`. ## Test plan - [ ] Build an `android_application` target with R8 enabled and confirm `ProguardMappingInfo` is present on the base module - [ ] Confirm the mapping is embedded in the unsigned AAB under `BUNDLE-METADATA/com.android.tools.build.obfuscation/proguard.map` Closes #565 COPYBARA_INTEGRATE_REVIEW=https://github.com/bazelbuild/rules_android/pull/565 from erikackermann:return-proguard-mapping-info-from-r8 fcbfe0bcb0215e262af2942d41abe6cae6e4e616 PiperOrigin-RevId: 995884135 Change-Id: Ie6d1a5900b55ed9b9c4aadaebb593494156a6d72
diff --git a/rules/android_binary/r8.bzl b/rules/android_binary/r8.bzl index f2d7193..5d1f6e4 100644 --- a/rules/android_binary/r8.bzl +++ b/rules/android_binary/r8.bzl
@@ -13,7 +13,7 @@ # limitations under the License. """R8 processor steps for android_binary.""" -load("//providers:providers.bzl", "AndroidDexInfo", "AndroidOptimizationInfo", "AndroidPreDexJarInfo") +load("//providers:providers.bzl", "AndroidDexInfo", "AndroidOptimizationInfo", "AndroidPreDexJarInfo", "ProguardMappingInfo") load("//rules:acls.bzl", "acls") load("//rules:android_neverlink_aspect.bzl", "StarlarkAndroidNeverlinkInfo") load("//rules:common.bzl", "common") @@ -217,6 +217,7 @@ providers = [ android_dex_info, AndroidPreDexJarInfo(pre_dex_jar = deploy_jar), + ProguardMappingInfo(proguard_mapping = proguard_mappings_output_file), AndroidOptimizationInfo( r8_optimization_info = build_metadata_output, optimization_analysis_report = html_report,