From fd1c0d2eaa0d1455ab4e710fb83f1142bded0b81 Mon Sep 17 00:00:00 2001 From: Anton Hansson Date: Thu, 2 Nov 2023 15:18:09 +0000 Subject: [PATCH] Add a new flag to stop disabling lint errors java_sdk_library has historically suppressed a few legitimate lint errors. Make it possible to remove these suppressions via a flag. Bug: 306806877 Test: checkapi Merged-In: I10577dacbd7ea8063c6e1e02f3b6c60a2bee5094 Change-Id: I10577dacbd7ea8063c6e1e02f3b6c60a2bee5094 --- java/sdk_library.go | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/java/sdk_library.go b/java/sdk_library.go index 1de89727f..ea451743b 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -618,6 +618,10 @@ type sdkLibraryProperties struct { Api_lint struct { // Enable api linting. Enabled *bool + + // If API lint is enabled, this flag controls whether a set of legitimate lint errors + // are turned off. The default is true. + Legacy_errors_allowed *bool } // TODO: determines whether to create HTML doc or not @@ -1747,13 +1751,15 @@ func (module *SdkLibrary) createStubsSourcesAndApi(mctx android.DefaultableHookC android.JoinWithPrefix(module.sdkLibraryProperties.Hidden_api_packages, " --hide-package ")) } droidstubsArgs = append(droidstubsArgs, module.sdkLibraryProperties.Droiddoc_options...) - disabledWarnings := []string{ - "BroadcastBehavior", - "DeprecationMismatch", - "HiddenSuperclass", - "MissingPermission", - "SdkConstant", - "Todo", + disabledWarnings := []string{"HiddenSuperclass"} + if proptools.BoolDefault(module.sdkLibraryProperties.Api_lint.Legacy_errors_allowed, true) { + disabledWarnings = append(disabledWarnings, + "BroadcastBehavior", + "DeprecationMismatch", + "MissingPermission", + "SdkConstant", + "Todo", + ) } droidstubsArgs = append(droidstubsArgs, android.JoinWithPrefix(disabledWarnings, "--hide "))