summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2024-01-30 01:30:53 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2024-01-30 01:30:53 +0000
commitc6db30b81ab2141dbbe984461e43abda00f9462a (patch)
treebfc91d54f021a5d3a6b6968ec26c3af9a4a687ec
parent19631d51939871672342700fbca724d6eb27df47 (diff)
parent5fd64b9c708553375ff2df3a7c85095cf3085cd5 (diff)
Merge "Prevent disabling checks via flags property" into main am: 59739666e6 am: 5fd64b9c70
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2933578 Change-Id: I274a32a4cbadb85fadb192f7e60049506791e1e7 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--java/lint.go6
-rw-r--r--java/lint_test.go19
2 files changed, 25 insertions, 0 deletions
diff --git a/java/lint.go b/java/lint.go
index bd6c1bae6..c79f6e7bb 100644
--- a/java/lint.go
+++ b/java/lint.go
@@ -364,6 +364,12 @@ func (l *linter) lint(ctx android.ModuleContext) {
return
}
+ for _, flag := range l.properties.Lint.Flags {
+ if strings.Contains(flag, "--disable") || strings.Contains(flag, "--enable") || strings.Contains(flag, "--check") {
+ ctx.PropertyErrorf("lint.flags", "Don't use --disable, --enable, or --check in the flags field, instead use the dedicated disabled_checks, warning_checks, error_checks, or fatal_checks fields")
+ }
+ }
+
if l.minSdkVersion.CompareTo(l.compileSdkVersion) == -1 {
l.extraMainlineLintErrors = append(l.extraMainlineLintErrors, updatabilityChecks...)
// Skip lint warning checks for NewApi warnings for libcore where they come from source
diff --git a/java/lint_test.go b/java/lint_test.go
index 6aee5946b..b51753f71 100644
--- a/java/lint_test.go
+++ b/java/lint_test.go
@@ -262,3 +262,22 @@ func TestJavaLintDatabaseSelectionFull(t *testing.T) {
}
}
}
+
+func TestCantControlCheckSeverityWithFlags(t *testing.T) {
+ bp := `
+ java_library {
+ name: "foo",
+ srcs: [
+ "a.java",
+ ],
+ min_sdk_version: "29",
+ sdk_version: "current",
+ lint: {
+ flags: ["--disabled", "NewApi"],
+ },
+ }
+ `
+ PrepareForTestWithJavaDefaultModules.
+ ExtendWithErrorHandler(android.FixtureExpectsOneErrorPattern("Don't use --disable, --enable, or --check in the flags field, instead use the dedicated disabled_checks, warning_checks, error_checks, or fatal_checks fields")).
+ RunTestWithBp(t, bp)
+}