Warn when unstable AIDL files are missing RequiresOptIn markers
Bug: 255373327
Test: UnstableAidlAnnotationDetectorTest
Change-Id: If79fd404b4e21a73176fc7d34437e8d843015f28
diff --git a/browser/browser/lint-baseline.xml b/browser/browser/lint-baseline.xml
new file mode 100644
index 0000000..e24f015
--- /dev/null
+++ b/browser/browser/lint-baseline.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ICustomTabsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/ICustomTabsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ICustomTabsService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/ICustomTabsService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IEngagementSignalsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/IEngagementSignalsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IPostMessageService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/IPostMessageService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ITrustedWebActivityCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/trusted/ITrustedWebActivityCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ITrustedWebActivityService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/customtabs/trusted/ITrustedWebActivityService.aidl"/>
+ </issue>
+
+</issues>
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/ErrorProneConfiguration.kt b/buildSrc/private/src/main/kotlin/androidx/build/ErrorProneConfiguration.kt
index cc91b50..68fb77c 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/ErrorProneConfiguration.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/ErrorProneConfiguration.kt
@@ -140,8 +140,10 @@
listOf(
"-Xplugin:ErrorProne",
+ // Ignore intermediate build output, generated files, and external sources. Also sources
+ // imported from Android Studio and IntelliJ which are used in the lint-checks project.
"-XepExcludedPaths:.*/(build/generated|build/errorProne|external|" +
- "compileTransaction/compile-output)/.*",
+ "compileTransaction/compile-output|lint-checks/src/main/java/androidx/com)/.*",
// Consider re-enabling the following checks. Disabled as part of
// error-prone upgrade
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt b/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
index 0d2cf29..753d7bc 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
@@ -17,14 +17,21 @@
package androidx.build
import com.android.build.api.dsl.Lint
+import com.android.build.gradle.BaseExtension
+import com.android.build.gradle.internal.lint.AndroidLintAnalysisTask
import com.android.build.gradle.internal.lint.AndroidLintTask
+import com.android.build.gradle.internal.lint.LintModelWriterTask
+import com.android.build.gradle.internal.lint.VariantInputs
import java.io.File
import java.util.Locale
import org.gradle.api.GradleException
import org.gradle.api.Project
+import org.gradle.api.file.ConfigurableFileCollection
import org.gradle.api.file.RegularFileProperty
import org.gradle.api.plugins.JavaPluginExtension
+import org.gradle.kotlin.dsl.findByType
import org.gradle.kotlin.dsl.getByType
+import org.gradle.kotlin.dsl.withType
fun Project.configureNonAndroidProjectForLint(extension: AndroidXExtension) {
apply(mapOf("plugin" to "com.android.lint"))
@@ -88,6 +95,54 @@
}
}
+/**
+ * Installs AIDL source directories on lint tasks. Adapted from AndroidXComposeImplPlugin's
+ * `configureLintForMultiplatformLibrary` extension function. See b/189250111 for feature request.
+ *
+ * The `UnstableAidlAnnotationDetector` check from `lint-checks` requires that _only_ unstable AIDL
+ * files are passed to Lint, e.g. files in the AGP-defined `aidl` source set but not files in the
+ * Stable AIDL plugin-defined `stableAidl` source set. If we decide to lint Stable AIDL files, we'll
+ * need some other way to distinguish stable from unstable AIDL.
+ */
+fun Project.configureLintForAidl() {
+ afterEvaluate {
+ val extension = project.extensions.findByType<BaseExtension>() ?: return@afterEvaluate
+ if (extension.buildFeatures.aidl != true) return@afterEvaluate
+
+ val mainAidl = extension.sourceSets.getByName("main").aidl.getSourceFiles()
+
+ /**
+ * Helper function to add the missing sourcesets to this [VariantInputs]
+ */
+ fun VariantInputs.addSourceSets() {
+ // Each variant has a source provider for the variant (such as debug) and the 'main'
+ // variant. The actual files that Lint will run on is both of these providers
+ // combined - so we can just add the dependencies to the first we see.
+ val variantAidl = extension.sourceSets.getByName(name.get()).aidl.getSourceFiles()
+ val sourceProvider = sourceProviders.get().firstOrNull() ?: return
+ sourceProvider.javaDirectories.withChangesAllowed {
+ from(mainAidl, variantAidl)
+ }
+ }
+
+ // Lint for libraries is split into two tasks - analysis, and reporting. We need to
+ // add the new sources to both, so all parts of the pipeline are aware.
+ project.tasks.withType<AndroidLintAnalysisTask>().configureEach {
+ it.variantInputs.addSourceSets()
+ }
+
+ project.tasks.withType<AndroidLintTask>().configureEach {
+ it.variantInputs.addSourceSets()
+ }
+
+ // Also configure the model writing task, so that we don't run into mismatches between
+ // analyzed sources in one module and a downstream module
+ project.tasks.withType<LintModelWriterTask>().configureEach {
+ it.variantInputs.addSourceSets()
+ }
+ }
+}
+
fun Project.configureLint(lint: Lint, extension: AndroidXExtension, isLibrary: Boolean) {
val lintChecksProject = project.rootProject.findProject(":lint-checks")
?: if (allowMissingLintProject()) {
@@ -98,6 +153,8 @@
project.dependencies.add("lintChecks", lintChecksProject)
+ project.configureLintForAidl()
+
// The purpose of this specific project is to test that lint is running, so
// it contains expected violations that we do not want to trigger a build failure
val isTestingLintItself = (project.path == ":lint-checks:integration-tests")
@@ -286,5 +343,21 @@
extensions.getByType<Lint>().disable.add("LintError")
}
+/**
+ * Lint uses [ConfigurableFileCollection.disallowChanges] during initialization, which prevents
+ * modifying the file collection separately (there is no time to configure it before AGP has
+ * initialized and disallowed changes). This uses reflection to temporarily allow changes, and
+ * apply [block].
+ */
+private fun ConfigurableFileCollection.withChangesAllowed(
+ block: ConfigurableFileCollection.() -> Unit
+) {
+ val disallowChanges = this::class.java.getDeclaredField("disallowChanges")
+ disallowChanges.isAccessible = true
+ disallowChanges.set(this, false)
+ block()
+ disallowChanges.set(this, true)
+}
+
val Project.lintBaseline: RegularFileProperty get() =
project.objects.fileProperty().fileValue(File(projectDir, "/lint-baseline.xml"))
diff --git a/car/app/app-automotive/lint-baseline.xml b/car/app/app-automotive/lint-baseline.xml
index 502b590..9dd7ce4 100644
--- a/car/app/app-automotive/lint-baseline.xml
+++ b/car/app/app-automotive/lint-baseline.xml
@@ -2,6 +2,69 @@
<issues format="6" by="lint 7.4.0-alpha08" type="baseline" client="gradle" dependencies="false" name="AGP (7.4.0-alpha08)" variant="all" version="7.4.0-alpha08">
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ICarAppActivity {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/ICarAppActivity.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IInsetsListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/IInsetsListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IProxyInputConnection {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/IProxyInputConnection.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRendererCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/IRendererCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRendererService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/IRendererService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISurfaceControl {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/surface/ISurfaceControl.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISurfaceListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/activity/renderer/surface/ISurfaceListener.aidl"/>
+ </issue>
+
+ <issue
id="UnsafeOptInUsageError"
message="This declaration is opt-in and its usage should be marked with `@androidx.car.app.annotations.ExperimentalCarApi` or `@OptIn(markerClass = androidx.car.app.annotations.ExperimentalCarApi.class)`"
errorLine1=" Collections.singleton(CarZone.CAR_ZONE_GLOBAL)))"
diff --git a/car/app/app-projected/lint-baseline.xml b/car/app/app-projected/lint-baseline.xml
new file mode 100644
index 0000000..53f60d7
--- /dev/null
+++ b/car/app/app-projected/lint-baseline.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ICarHardwareHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/hardware/ICarHardwareHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ICarHardwareResult {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/hardware/ICarHardwareResult.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ICarHardwareResultTypes {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/hardware/ICarHardwareResultTypes.aidl"/>
+ </issue>
+
+</issues>
diff --git a/car/app/app/lint-baseline.xml b/car/app/app/lint-baseline.xml
index 182bb75..59bdb69 100644
--- a/car/app/app/lint-baseline.xml
+++ b/car/app/app/lint-baseline.xml
@@ -985,15 +985,6 @@
<issue
id="BanHideAnnotation"
message="@hide is not allowed in Javadoc"
- errorLine1=" public @interface ItemSize {"
- errorLine2=" ~~~~~~~~">
- <location
- file="src/main/java/androidx/car/app/model/GridTemplate.java"/>
- </issue>
-
- <issue
- id="BanHideAnnotation"
- message="@hide is not allowed in Javadoc"
errorLine1="public interface HostCall<ServiceT, ReturnT> {"
errorLine2=" ~~~~~~~~">
<location
@@ -1291,8 +1282,8 @@
<issue
id="BanHideAnnotation"
message="@hide is not allowed in Javadoc"
- errorLine1=" protected Deque<Screen> getScreenStack() {"
- errorLine2=" ~~~~~~~~~~~~~~">
+ errorLine1=" protected Deque<Screen> getScreenStackInternal() {"
+ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/java/androidx/car/app/ScreenManager.java"/>
</issue>
@@ -1469,6 +1460,222 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IAlertCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IAlertCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IAppHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/IAppHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IAppManager {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/IAppManager.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ICarApp {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/ICarApp.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ICarAudioCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/media/ICarAudioCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ICarHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/ICarHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IConstraintHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/constraints/IConstraintHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IConversationCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/messaging/model/IConversationCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IInputCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IInputCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface INavigationHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/navigation/INavigationHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface INavigationManager {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/navigation/INavigationManager.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnCheckedChangeListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IOnCheckedChangeListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnClickListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IOnClickListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnContentRefreshListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IOnContentRefreshListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IOnDoneCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/IOnDoneCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnItemVisibilityChangedListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IOnItemVisibilityChangedListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IOnRequestPermissionsListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/IOnRequestPermissionsListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnSelectedListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/IOnSelectedListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IPanModeListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/navigation/model/IPanModeListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISearchCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/ISearchCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IStartCarApp {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/IStartCarApp.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ISuggestionHost {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/suggestion/ISuggestionHost.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISurfaceCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/ISurfaceCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ITabCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/car/app/model/ITabCallback.aidl"/>
+ </issue>
+
+ <issue
id="SupportAnnotationUsage"
message="This annotation does not apply for type java.util.List<androidx.car.app.hardware.climate.CarClimateFeature>; expected int"
errorLine1=" @ClimateProfileRequest.ClimateProfileFeature"
diff --git a/health/connect/connect-client/lint-baseline.xml b/health/connect/connect-client/lint-baseline.xml
index d3df7d1..075983f 100644
--- a/health/connect/connect-client/lint-baseline.xml
+++ b/health/connect/connect-client/lint-baseline.xml
@@ -155,6 +155,222 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IAggregateDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IAggregateDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IClearOnChangesListenerCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IClearOnChangesListenerCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IDeleteDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IDeleteDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IDeleteDataRangeCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IDeleteDataRangeCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IFilterGrantedPermissionsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IFilterGrantedPermissionsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IGetChangesCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IGetChangesCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IGetChangesTokenCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IGetChangesTokenCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IGetGrantedPermissionsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IGetGrantedPermissionsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IGetIsInForegroundCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/impl/sdkservice/IGetIsInForegroundCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IGetPermissionTokenCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/impl/sdkservice/IGetPermissionTokenCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IHealthDataSdkService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/impl/sdkservice/IHealthDataSdkService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IHealthDataService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IHealthDataService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IInsertDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IInsertDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IOnChangesListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IOnChangesListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IReadDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IReadDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IReadDataRangeCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IReadDataRangeCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IReadExerciseRouteCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IReadExerciseRouteCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IRegisterForDataNotificationsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IRegisterForDataNotificationsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IRevokeAllPermissionsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IRevokeAllPermissionsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISetOnChangesListenerCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/ISetOnChangesListenerCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISetPermissionTokenCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/impl/sdkservice/ISetPermissionTokenCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IUnregisterFromDataNotificationsCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IUnregisterFromDataNotificationsCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IUpdateDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IUpdateDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IUpsertExerciseRouteCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/platform/client/service/IUpsertExerciseRouteCallback.aidl"/>
+ </issue>
+
+ <issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://developer.android.com/kotlin/interop#nullability_annotations"
errorLine1=" public ClientConfiguration(String apiClientName, String servicePackageName, String bindAction) {"
diff --git a/health/health-services-client/lint-baseline.xml b/health/health-services-client/lint-baseline.xml
index 582418f..2ecb3d1 100644
--- a/health/health-services-client/lint-baseline.xml
+++ b/health/health-services-client/lint-baseline.xml
@@ -155,6 +155,114 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IExerciseApiService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IExerciseApiService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IExerciseInfoCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/internal/IExerciseInfoCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IExerciseUpdateListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IExerciseUpdateListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IHealthServicesApiService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IHealthServicesApiService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IMeasureApiService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IMeasureApiService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IMeasureCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IMeasureCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IPassiveListenerCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IPassiveListenerCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IPassiveListenerService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IPassiveListenerService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IPassiveMonitoringApiService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IPassiveMonitoringApiService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IPassiveMonitoringCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IPassiveMonitoringCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IStatusCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/internal/IStatusCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IVersionApiService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/health/services/client/impl/IVersionApiService.aidl"/>
+ </issue>
+
+ <issue
id="SyntheticAccessor"
message="Access to `private` field `mCurrentVersion` of class `Client` requires synthetic accessor"
errorLine1=" mCurrentVersion ="
diff --git a/javascriptengine/javascriptengine/lint-baseline.xml b/javascriptengine/javascriptengine/lint-baseline.xml
index ecf1f9a..4202c21 100644
--- a/javascriptengine/javascriptengine/lint-baseline.xml
+++ b/javascriptengine/javascriptengine/lint-baseline.xml
@@ -37,4 +37,49 @@
file="src/main/java/androidx/javascriptengine/common/Utils.java"/>
</issue>
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IJsSandboxConsoleCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/org/chromium/android_webview/js_sandbox/common/IJsSandboxConsoleCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IJsSandboxIsolate {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/org/chromium/android_webview/js_sandbox/common/IJsSandboxIsolate.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IJsSandboxIsolateCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/org/chromium/android_webview/js_sandbox/common/IJsSandboxIsolateCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IJsSandboxIsolateSyncCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/org/chromium/android_webview/js_sandbox/common/IJsSandboxIsolateSyncCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IJsSandboxService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/org/chromium/android_webview/js_sandbox/common/IJsSandboxService.aidl"/>
+ </issue>
+
</issues>
diff --git a/lint-checks/lint-baseline.xml b/lint-checks/lint-baseline.xml
index 4cc9019..4f9da21 100644
--- a/lint-checks/lint-baseline.xml
+++ b/lint-checks/lint-baseline.xml
@@ -19,4 +19,2425 @@
file="integration-tests/src/main/java/androidx/ThreadSleepUsageKotlin.kt"/>
</issue>
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlAnnotationElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlAnnotationElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlAnnotationElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlAnnotationElementImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlAnnotationElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlBody.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlBody.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlBody.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlBody.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlBody.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlBodyImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlBodyImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlConstantDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlConstantDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlConstantDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlConstantDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlConstantDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDottedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDottedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlDottedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlDottedNameImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlDottedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlElementType(@NotNull @NonNls String debugName) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlElementType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlEnumDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlEnumDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlEnumDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlEnumeratorDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlEnumeratorDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlEnumeratorDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumeratorDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumeratorDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumeratorDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumeratorDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlEnumeratorDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlExpression.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlExpressionImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlExpressionImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlFile.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlFile.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlFileType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlFileType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlFileType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlFileType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlImport.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlImport.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlImportImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlImportImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlImportImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlImportImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlImportImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlImportImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlInterfaceDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlInterfaceDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlInterfaceDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlMethodDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlMethodDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlMethodDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlMethodDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlMethodDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlMethodDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlMethodDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlNameComponent.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlNameComponentImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNameComponentImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNameComponentImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNameComponentImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNameComponentImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlNamedElementImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNamedElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNamedElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public PsiElement setName(@NonNls @NotNull String name) throws IncorrectOperationException {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNamedElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNamedElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlNamedElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlPackage.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlPackageImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlPackageImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlPackageImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlPackageImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlPackageImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParameter.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParameter.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlParameterImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParameterImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParameterImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParameterImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParameterImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParameterImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlParcelableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlParcelableDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlParcelableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/AidlParserDefinition.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlPsiCompositeElementImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlPsiCompositeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlQualifiedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlQualifiedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlQualifiedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlQualifiedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlQualifiedName.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlQualifiedNameImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlQualifiedNameImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlTokenType(@NotNull @NonNls String debugName) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/lexer/AidlTokenType.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlTypeElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlTypeElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlTypeElement.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlTypeElementImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlTypeElementImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlUnionDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlUnionDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlUnionDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVariableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVariableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVariableDeclaration.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public AidlVariableDeclarationImpl(@NotNull ASTNode node) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull AidlVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void accept(@NotNull PsiElementVisitor visitor) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/impl/AidlVariableDeclarationImpl.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitAnnotationElement(@NotNull AidlAnnotationElement o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitBody(@NotNull AidlBody o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitConstantDeclaration(@NotNull AidlConstantDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitDottedName(@NotNull AidlDottedName o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitEnumDeclaration(@NotNull AidlEnumDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitEnumeratorDeclaration(@NotNull AidlEnumeratorDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitExpression(@NotNull AidlExpression o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitImport(@NotNull AidlImport o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitInterfaceDeclaration(@NotNull AidlInterfaceDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitMethodDeclaration(@NotNull AidlMethodDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitNameComponent(@NotNull AidlNameComponent o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitPackage(@NotNull AidlPackage o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitParameter(@NotNull AidlParameter o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitParcelableDeclaration(@NotNull AidlParcelableDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitQualifiedName(@NotNull AidlQualifiedName o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitTypeElement(@NotNull AidlTypeElement o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitUnionDeclaration(@NotNull AidlUnionDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitVariableDeclaration(@NotNull AidlVariableDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitDeclaration(@NotNull AidlDeclaration o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitNamedElement(@NotNull AidlNamedElement o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public void visitPsiCompositeElement(@NotNull AidlPsiCompositeElement o) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/psi/AidlVisitor.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/analysis/AnalysisBundle.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public static @Nls String message(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key,"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/analysis/AnalysisBundle.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull Object... params) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/analysis/AnalysisBundle.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public static boolean isWhitespaceOrComment(@NotNull PsiBuilder builder, @Nullable IElementType type) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" public static boolean isWhitespaceOrComment(@NotNull PsiBuilder builder, @Nullable IElementType type) {"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" private static boolean wasAutoSkipped(@NotNull PsiBuilder builder, int steps) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable IElementType elementType,"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable Parser eatMore) {"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable IElementType elementType,"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable Parser eatMore) {"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" private static void run_hooks_impl_(PsiBuilder builder, ErrorState state, @Nullable IElementType elementType) {"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable IElementType elementType,"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable Parser eatMore) {"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.Nullable` instead of `@org.jetbrains.annotations.Nullable`"
+ errorLine1=" @Nullable"
+ errorLine2=" ~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" private static PsiBuilderImpl.ProductionMarker getLatestExtensibleDoneMarker(@NotNull PsiBuilder builder) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" public @NotNull String getExpected(int position, boolean expected) {"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="NullabilityAnnotationsDetector"
+ message="Use `@androidx.annotation.NonNull` instead of `@org.jetbrains.annotations.NotNull`"
+ errorLine1=" @NotNull"
+ errorLine2=" ~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
+ <issue
+ id="PrivateConstructorForUtilityClass"
+ message="Utility class is missing private constructor"
+ errorLine1=" class Factory {"
+ errorLine2=" ~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/android/tools/idea/lang/aidl/lexer/AidlTokenTypes.java"/>
+ </issue>
+
+ <issue
+ id="PrivateConstructorForUtilityClass"
+ message="Utility class is missing private constructor"
+ errorLine1="public class GeneratedParserUtilBase {"
+ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
+ <location
+ file="src/main/java/androidx/com/intellij/lang/parser/GeneratedParserUtilBase.java"/>
+ </issue>
+
</issues>
diff --git a/lint-checks/src/main/java/androidx/build/lint/AndroidXIssueRegistry.kt b/lint-checks/src/main/java/androidx/build/lint/AndroidXIssueRegistry.kt
index 6490110..b9cbe32 100644
--- a/lint-checks/src/main/java/androidx/build/lint/AndroidXIssueRegistry.kt
+++ b/lint-checks/src/main/java/androidx/build/lint/AndroidXIssueRegistry.kt
@@ -70,6 +70,7 @@
NullabilityAnnotationsDetector.ISSUE,
IgnoreClassLevelDetector.ISSUE,
ExperimentalPropertyAnnotationDetector.ISSUE,
+ UnstableAidlAnnotationDetector.ISSUE,
// MissingJvmDefaultWithCompatibilityDetector is intentionally left out of the
// registry, see comments on the class for more details.
)
diff --git a/lint-checks/src/main/java/androidx/build/lint/UnstableAidlAnnotationDetector.kt b/lint-checks/src/main/java/androidx/build/lint/UnstableAidlAnnotationDetector.kt
new file mode 100644
index 0000000..fb9e2ef
--- /dev/null
+++ b/lint-checks/src/main/java/androidx/build/lint/UnstableAidlAnnotationDetector.kt
@@ -0,0 +1,121 @@
+/*
+ * Copyright 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.build.lint
+
+import androidx.build.lint.aidl.AidlDefinitionDetector
+import androidx.build.lint.aidl.getLocation
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlAnnotationElement
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlDeclaration
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlInterfaceDeclaration
+import com.android.tools.lint.detector.api.Category
+import com.android.tools.lint.detector.api.Context
+import com.android.tools.lint.detector.api.Implementation
+import com.android.tools.lint.detector.api.Issue
+import com.android.tools.lint.detector.api.Scope
+import com.android.tools.lint.detector.api.Severity
+import com.intellij.psi.JavaPsiFacade
+import com.intellij.psi.PsiElement
+import com.intellij.psi.search.GlobalSearchScope
+
+/**
+ * Annotation used by the AIDL compiler to emit arbitrary Java annotations in generated source.
+ *
+ * This detector's functionality requires that Stable AIDL files are _not_ passed to Lint. See the
+ * `Project.configureLintForAidl()` extension function in `LintConfiguration.kt` for implementation.
+ */
+private const val JAVA_PASSTHROUGH = "JavaPassthrough"
+
+class UnstableAidlAnnotationDetector : AidlDefinitionDetector() {
+
+ override fun visitAidlInterfaceDeclaration(context: Context, node: AidlInterfaceDeclaration) {
+ var passthruAnnotations: List<AidlAnnotationElement> = node.annotationElementList.filter {
+ annotationElement ->
+ annotationElement.qualifiedName.name.equals(JAVA_PASSTHROUGH)
+ }
+
+ // The AIDL lexer doesn't handle @JavaPassthrough correctly, so look through the previous
+ // elements until we either find it or hit another declaration.
+ if (passthruAnnotations.isEmpty()) {
+ passthruAnnotations = node.filterPrevSiblingUntilNull { element ->
+ when (element) {
+ is AidlAnnotationElement -> element.qualifiedName.name.equals(JAVA_PASSTHROUGH)
+ is AidlDeclaration -> null
+ else -> false
+ }
+ }
+ }
+
+ // Find a JavaPassthrough annotation whose parameter is a RequiresOptIn marker.
+ val isAnnotated = passthruAnnotations.any { passthruAnnotation ->
+ val annotationName = passthruAnnotation.expression?.text?.toString()
+ if (annotationName?.startsWith("\"@") == true) {
+ // Attempt to load the fully-qualified class name as a PsiClass.
+ val project = passthruAnnotation.project
+ val psiClass = JavaPsiFacade.getInstance(project).findClass(
+ annotationName.substring(2, annotationName.length - 1),
+ GlobalSearchScope.projectScope(project)
+ )
+ // Determine if the class is annotated with RequiresOptIn.
+ psiClass?.annotations?.any { psiAnnotation ->
+ // Either androidx.annotation or kotlin version is fine here.
+ psiAnnotation.hasQualifiedName("RequiresOptIn")
+ } ?: false
+ } else {
+ false
+ }
+ }
+
+ if (!isAnnotated) {
+ context.report(ISSUE, node.getLocation(),
+ "Unstable AIDL files must be annotated with `@RequiresOptIn` marker")
+ }
+ }
+
+ companion object {
+ val ISSUE = Issue.create(
+ "RequireUnstableAidlAnnotation",
+ "Unstable AIDL files must be annotated",
+ "AIDL files that are not managed by the Stable AIDL plugin must be " +
+ "annotated with a `@RequiresOptIn` marker to indicate they must not be used in " +
+ "production code. See go/androidx-api-guidelines#annotating-unstable-ipc for " +
+ "details on creating marker annotations and migrating to Stable AIDL.",
+ Category.CORRECTNESS, 5, Severity.ERROR,
+ Implementation(UnstableAidlAnnotationDetector::class.java, Scope.OTHER_SCOPE)
+ )
+ }
+}
+
+/**
+ * Collects siblings in the "previous" direction, keeping them when the predicate returns true,
+ * dropping them when the predicate returns false, and stopping when the predicate returns null.
+ */
+internal inline fun <reified T> PsiElement.filterPrevSiblingUntilNull(
+ predicate: (PsiElement) -> Boolean?
+): List<T> {
+ val output = mutableListOf<T>()
+ var sibling = this.prevSibling
+ while (sibling != null) {
+ val result = predicate(sibling)
+ if (result == true && sibling is T) {
+ output += sibling
+ } else if (result == null) {
+ break
+ }
+ sibling = sibling.prevSibling
+ }
+ return output
+}
diff --git a/lint-checks/src/main/java/androidx/build/lint/aidl/AidlDefinitionDetector.kt b/lint-checks/src/main/java/androidx/build/lint/aidl/AidlDefinitionDetector.kt
new file mode 100644
index 0000000..0e552a9
--- /dev/null
+++ b/lint-checks/src/main/java/androidx/build/lint/aidl/AidlDefinitionDetector.kt
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.build.lint.aidl
+
+import androidx.com.android.tools.idea.lang.aidl.AidlFileType
+import androidx.com.android.tools.idea.lang.aidl.AidlParserDefinition
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlDeclaration
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlFile
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlInterfaceDeclaration
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlMethodDeclaration
+import androidx.com.android.tools.idea.lang.aidl.psi.AidlParcelableDeclaration
+import com.android.tools.lint.detector.api.Context
+import com.android.tools.lint.detector.api.Detector
+import com.android.tools.lint.detector.api.Location
+import com.android.tools.lint.detector.api.OtherFileScanner
+import com.android.tools.lint.detector.api.Scope
+import com.intellij.core.CoreFileTypeRegistry
+import com.intellij.lang.LanguageParserDefinitions
+import com.intellij.openapi.vfs.local.CoreLocalFileSystem
+import com.intellij.psi.PsiManager
+import com.intellij.psi.SingleRootFileViewProvider
+import java.io.File
+
+/**
+ * Abstract class for detectors running against AIDL definitions (e.g. .aidl files).
+ */
+abstract class AidlDefinitionDetector : Detector(), OtherFileScanner {
+
+ override fun getApplicableFiles() = Scope.OTHER_SCOPE
+
+ override fun beforeCheckEachProject(context: Context) {
+ LanguageParserDefinitions.INSTANCE.apply {
+ // When we run from CLI, the IntelliJ parser (which does not support lexing AIDL) will
+ // already be set. Only the first parser will be used, so we need to remove that parser
+ // before we add our own.
+ allForLanguage(AidlFileType.INSTANCE.language).forEach { parser ->
+ removeExplicitExtension(AidlFileType.INSTANCE.language, parser)
+ }
+ addExplicitExtension(AidlFileType.INSTANCE.language, AidlParserDefinition())
+ }
+ (CoreFileTypeRegistry.getInstance() as CoreFileTypeRegistry).registerFileType(
+ AidlFileType.INSTANCE,
+ AidlFileType.INSTANCE.defaultExtension
+ )
+ }
+
+ override fun run(context: Context) {
+ if (context.file.extension == AidlFileType.DEFAULT_ASSOCIATED_EXTENSION) {
+ ioFileToAidlFile(context, context.file)
+ .allAidlDeclarations
+ .forEach { declaration ->
+ visitAidlDeclaration(context, declaration)
+ }
+ }
+ }
+
+ private fun visitAidlDeclaration(context: Context, aidlDeclaration: AidlDeclaration) {
+ when (aidlDeclaration) {
+ is AidlInterfaceDeclaration ->
+ visitAidlInterfaceDeclaration(context, aidlDeclaration)
+ is AidlMethodDeclaration ->
+ visitAidlMethodDeclaration(context, aidlDeclaration)
+ is AidlParcelableDeclaration ->
+ visitAidlParcelableDeclaration(context, aidlDeclaration)
+ }
+ }
+
+ /**
+ * Visitor for `interface`s defined in AIDL.
+ */
+ open fun visitAidlInterfaceDeclaration(context: Context, node: AidlInterfaceDeclaration) {
+ // Stub.
+ }
+
+ /**
+ * Visitor for methods defined on `interface`s in AIDL.
+ */
+ open fun visitAidlMethodDeclaration(context: Context, node: AidlMethodDeclaration) {
+ // Stub.
+ }
+
+ /**
+ * Visitor for `parcelable`s defined in AIDL.
+ */
+ open fun visitAidlParcelableDeclaration(context: Context, node: AidlParcelableDeclaration) {
+ // Stub.
+ }
+}
+
+internal fun ioFileToAidlFile(context: Context, file: File): AidlFile {
+ val vFile = CoreLocalFileSystem().findFileByIoFile(file)!!
+ val psiManager = PsiManager.getInstance(context.project.ideaProject)
+ val singleRootFileViewProvider = SingleRootFileViewProvider(
+ psiManager, vFile, false, AidlFileType.INSTANCE
+ )
+ return AidlFile(singleRootFileViewProvider)
+}
+
+fun AidlDeclaration.getLocation() = Location.create(
+ File(containingFile.viewProvider.virtualFile.path),
+ containingFile.text,
+ textRange.startOffset,
+ textRange.endOffset
+)
\ No newline at end of file
diff --git a/lint-checks/src/test/java/androidx/build/lint/BanInappropriateExperimentalUsageTest.kt b/lint-checks/src/test/java/androidx/build/lint/BanInappropriateExperimentalUsageTest.kt
index 7a5349a..eb31f16 100644
--- a/lint-checks/src/test/java/androidx/build/lint/BanInappropriateExperimentalUsageTest.kt
+++ b/lint-checks/src/test/java/androidx/build/lint/BanInappropriateExperimentalUsageTest.kt
@@ -20,8 +20,9 @@
import androidx.build.lint.BanInappropriateExperimentalUsage.Companion.getMavenCoordinatesFromPath
import androidx.build.lint.BanInappropriateExperimentalUsage.Companion.isAnnotationAlwaysAllowed
+import androidx.build.lint.Stubs.Companion.JetpackOptIn
+import androidx.build.lint.Stubs.Companion.JetpackRequiresOptIn
import com.android.tools.lint.checks.infrastructure.ProjectDescription
-import com.android.tools.lint.checks.infrastructure.TestFile
import com.android.tools.lint.checks.infrastructure.TestMode
import org.junit.Test
import org.junit.runner.RunWith
@@ -143,7 +144,7 @@
.type(ProjectDescription.Type.LIBRARY)
.report(false)
.files(
- ANDROIDX_REQUIRES_OPT_IN_KT,
+ JetpackRequiresOptIn,
ktSample("sample.annotation.provider.ExperimentalSampleAnnotation"),
javaSample("sample.annotation.provider.ExperimentalSampleAnnotationJava"),
javaSample("sample.annotation.provider.RequiresOptInSampleAnnotationJava"),
@@ -164,7 +165,7 @@
.type(ProjectDescription.Type.LIBRARY)
.dependsOn(provider)
.files(
- ANDROIDX_OPT_IN_KT,
+ JetpackOptIn,
ktSample("androidx.sample.consumer.OutsideGroupExperimentalAnnotatedClass"),
gradle(
"""
@@ -207,60 +208,4 @@
// TODO: Using TestMode.DEFAULT due to b/188814760; remove testModes once bug is resolved
check(provider, consumer, testModes = listOf(TestMode.DEFAULT)).expect(expected)
}
-
- companion object {
- /**
- * [TestFile] containing OptIn.kt from the AndroidX experimental annotation library.
- */
- val ANDROIDX_OPT_IN_KT: TestFile = kotlin(
- """
-package androidx.annotation
-
-import kotlin.annotation.Retention
-import kotlin.annotation.Target
-import kotlin.reflect.KClass
-
-@Retention(AnnotationRetention.BINARY)
-@Target(
- AnnotationTarget.CLASS,
- AnnotationTarget.PROPERTY,
- AnnotationTarget.LOCAL_VARIABLE,
- AnnotationTarget.VALUE_PARAMETER,
- AnnotationTarget.CONSTRUCTOR,
- AnnotationTarget.FUNCTION,
- AnnotationTarget.PROPERTY_GETTER,
- AnnotationTarget.PROPERTY_SETTER,
- AnnotationTarget.FILE,
- AnnotationTarget.TYPEALIAS
-)
-public annotation class OptIn(
- @get:Suppress("ArrayReturn")
- vararg val markerClass: KClass<out Annotation>
-)
- """.trimIndent()
- )
-
- /**
- * [TestFile] containing RequiresOptIn.kt from the AndroidX experimental annotation library.
- */
- val ANDROIDX_REQUIRES_OPT_IN_KT: TestFile = kotlin(
- """
-package androidx.annotation
-
-import kotlin.annotation.Retention
-import kotlin.annotation.Target
-
-@Retention(AnnotationRetention.BINARY)
-@Target(AnnotationTarget.ANNOTATION_CLASS)
-public annotation class RequiresOptIn(
- val level: Level = Level.ERROR
-) {
- public enum class Level {
- WARNING,
- ERROR
- }
-}
- """.trimIndent()
- )
- }
}
diff --git a/lint-checks/src/test/java/androidx/build/lint/Stubs.kt b/lint-checks/src/test/java/androidx/build/lint/Stubs.kt
index 685f57c..0790621 100644
--- a/lint-checks/src/test/java/androidx/build/lint/Stubs.kt
+++ b/lint-checks/src/test/java/androidx/build/lint/Stubs.kt
@@ -18,6 +18,7 @@
package androidx.build.lint
+import com.android.tools.lint.checks.infrastructure.LintDetectorTest
import com.android.tools.lint.checks.infrastructure.TestFile
import com.android.tools.lint.checks.infrastructure.TestFiles
@@ -309,6 +310,60 @@
annotation class JvmDefaultWithCompatibility
""".trimIndent()
)
+
+ /**
+ * [TestFile] containing OptIn.kt from the AndroidX experimental annotation library.
+ */
+ val JetpackOptIn: TestFile = LintDetectorTest.kotlin(
+ """
+package androidx.annotation
+
+import kotlin.annotation.Retention
+import kotlin.annotation.Target
+import kotlin.reflect.KClass
+
+@Retention(AnnotationRetention.BINARY)
+@Target(
+ AnnotationTarget.CLASS,
+ AnnotationTarget.PROPERTY,
+ AnnotationTarget.LOCAL_VARIABLE,
+ AnnotationTarget.VALUE_PARAMETER,
+ AnnotationTarget.CONSTRUCTOR,
+ AnnotationTarget.FUNCTION,
+ AnnotationTarget.PROPERTY_GETTER,
+ AnnotationTarget.PROPERTY_SETTER,
+ AnnotationTarget.FILE,
+ AnnotationTarget.TYPEALIAS
+)
+annotation class OptIn(
+ @get:Suppress("ArrayReturn")
+ vararg val markerClass: KClass<out Annotation>
+)
+ """.trimIndent()
+ )
+
+ /**
+ * [TestFile] containing RequiresOptIn.kt from the AndroidX experimental annotation library.
+ */
+ val JetpackRequiresOptIn: TestFile = LintDetectorTest.kotlin(
+ """
+package androidx.annotation
+
+import kotlin.annotation.Retention
+import kotlin.annotation.Target
+
+@Retention(AnnotationRetention.BINARY)
+@Target(AnnotationTarget.ANNOTATION_CLASS)
+annotation class RequiresOptIn(
+ val level: Level = Level.ERROR
+) {
+ enum class Level {
+ WARNING,
+ ERROR
+ }
+}
+ """.trimIndent()
+ )
/* ktlint-enable max-line-length */
}
}
diff --git a/lint-checks/src/test/java/androidx/build/lint/UnstableAidlAnnotationDetectorTest.kt b/lint-checks/src/test/java/androidx/build/lint/UnstableAidlAnnotationDetectorTest.kt
new file mode 100644
index 0000000..e220f0f
--- /dev/null
+++ b/lint-checks/src/test/java/androidx/build/lint/UnstableAidlAnnotationDetectorTest.kt
@@ -0,0 +1,179 @@
+/*
+ * Copyright 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.build.lint
+
+import androidx.build.lint.Stubs.Companion.JetpackRequiresOptIn
+import com.android.tools.lint.checks.infrastructure.TestFile
+import com.android.tools.lint.checks.infrastructure.TestFiles
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.junit.runners.JUnit4
+
+@RunWith(JUnit4::class)
+class UnstableAidlAnnotationDetectorTest : AbstractLintDetectorTest(
+ useDetector = UnstableAidlAnnotationDetector(),
+ useIssues = listOf(UnstableAidlAnnotationDetector.ISSUE)
+) {
+
+ @Test
+ fun noAnnotation() {
+ val input = aidl(
+ "android/support/v4/os/IResultReceiver.aidl",
+ """
+ package android.support.v4.os;
+
+ import android.os.Bundle;
+
+ /** @hide */
+ oneway interface IResultReceiver {
+ void send(int resultCode, in Bundle resultData);
+ }
+ """.trimIndent()
+ )
+
+ /* ktlint-disable max-line-length */
+ val expected = """
+ src/main/aidl/android/support/v4/os/IResultReceiver.aidl:6: Error: Unstable AIDL files must be annotated with @RequiresOptIn marker [RequireUnstableAidlAnnotation]
+ oneway interface IResultReceiver {
+ ^
+ 1 errors, 0 warnings
+ """.trimIndent()
+ /* ktlint-enable max-line-length */
+
+ check(input).expect(expected)
+ }
+
+ @Test
+ fun wrongAnnotation() {
+ val input = arrayOf(
+ java(
+ "src/androidx/core/MyAnnotation.java",
+ """
+ public @interface MyAnnotation {}
+ """.trimIndent()
+ ),
+ aidl(
+ "android/support/v4/os/IResultReceiver.aidl",
+ """
+ package android.support.v4.os;
+
+ import android.os.Bundle;
+
+ /** @hide */
+ @JavaPassthrough(annotation="@androidx.core.MyAnnotation")
+ oneway interface IResultReceiver {
+ void send(int resultCode, in Bundle resultData);
+ }
+ """.trimIndent()
+ )
+ )
+
+ /* ktlint-disable max-line-length */
+ val expected = """
+ src/main/aidl/android/support/v4/os/IResultReceiver.aidl:7: Error: Unstable AIDL files must be annotated with @RequiresOptIn marker [RequireUnstableAidlAnnotation]
+ oneway interface IResultReceiver {
+ ^
+ 1 errors, 0 warnings
+ """.trimIndent()
+ /* ktlint-enable max-line-length */
+
+ check(*input).expect(expected)
+ }
+
+ @Test
+ fun multipleAnnotations() {
+ val input = arrayOf(
+ JetpackRequiresOptIn,
+ java(
+ "src/androidx/core/MyAnnotation.java",
+ """
+ public @interface MyAnnotation {}
+ """.trimIndent()
+ ),
+ java(
+ "src/androidx/core/UnstableAidlDefinition.java",
+ """
+ @RequiresOptIn
+ public @interface UnstableAidlDefinition {}
+ """.trimIndent()
+ ),
+ aidl(
+ "android/support/v4/os/IResultReceiver.aidl",
+ """
+ package android.support.v4.os;
+
+ import android.os.Bundle;
+
+ /** @hide */
+ @JavaPassthrough(annotation="@androidx.core.UnstableAidlDefinition")
+ @JavaPassthrough(annotation="@androidx.core.MyAnnotation")
+ oneway interface IResultReceiver {
+ void send(int resultCode, in Bundle resultData);
+ }
+ """.trimIndent()
+ ),
+ )
+
+ /* ktlint-disable max-line-length */
+ val expected = """
+No warnings.
+ """.trimIndent()
+ /* ktlint-enable max-line-length */
+
+ check(*input).expect(expected)
+ }
+
+ @Test
+ fun correctAnnotation() {
+ val input = arrayOf(
+ JetpackRequiresOptIn,
+ java(
+ "src/androidx/core/UnstableAidlDefinition.java",
+ """
+ @RequiresOptIn
+ public @interface UnstableAidlDefinition {}
+ """.trimIndent()
+ ),
+ aidl(
+ "android/support/v4/os/IResultReceiver.aidl",
+ """
+ package android.support.v4.os;
+
+ import android.os.Bundle;
+
+ /** @hide */
+ @JavaPassthrough(annotation="@androidx.core.UnstableAidlDefinition")
+ oneway interface IResultReceiver {
+ void send(int resultCode, in Bundle resultData);
+ }
+ """.trimIndent()
+ ),
+ )
+
+ /* ktlint-disable max-line-length */
+ val expected = """
+No warnings.
+ """.trimIndent()
+ /* ktlint-enable max-line-length */
+
+ check(*input).expect(expected)
+ }
+}
+
+fun aidl(to: String, source: String): TestFile = TestFiles
+ .source(to, source)
+ .within("src/main/aidl")
diff --git a/media/media/lint-baseline.xml b/media/media/lint-baseline.xml
index feab3b5..78efc10 100644
--- a/media/media/lint-baseline.xml
+++ b/media/media/lint-baseline.xml
@@ -2,6 +2,24 @@
<issues format="6" by="lint 8.0.0-beta03" type="baseline" client="gradle" dependencies="false" name="AGP (8.0.0-beta03)" variant="all" version="8.0.0-beta03">
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with @RequiresOptIn marker"
+ errorLine1="oneway interface IMediaControllerCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/v4/media/session/IMediaControllerCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with @RequiresOptIn marker"
+ errorLine1="interface IMediaSession {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/v4/media/session/IMediaSession.aidl"/>
+ </issue>
+
+ <issue
id="LambdaLast"
message="Functional interface parameters (such as parameter 1, "listener", in androidx.media.AudioFocusRequestCompat.Builder.setOnAudioFocusChangeListener) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions"
errorLine1=" @NonNull OnAudioFocusChangeListener listener, @NonNull Handler handler) {"
diff --git a/media2/media2-session/lint-baseline.xml b/media2/media2-session/lint-baseline.xml
index 1d566f1..e52b867 100644
--- a/media2/media2-session/lint-baseline.xml
+++ b/media2/media2-session/lint-baseline.xml
@@ -38,6 +38,33 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IMediaController {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/session/IMediaController.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IMediaSession {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/session/IMediaSession.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IMediaSessionService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/session/IMediaSessionService.aidl"/>
+ </issue>
+
+ <issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://developer.android.com/kotlin/interop#nullability_annotations"
errorLine1=" public void setTimeDiff(Long timeDiff) {"
diff --git a/media2/media2-session/version-compat-tests/common/lint-baseline.xml b/media2/media2-session/version-compat-tests/common/lint-baseline.xml
index cd2fd41..66ef781 100644
--- a/media2/media2-session/version-compat-tests/common/lint-baseline.xml
+++ b/media2/media2-session/version-compat-tests/common/lint-baseline.xml
@@ -11,6 +11,51 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteMediaBrowserCompat {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/test/common/IRemoteMediaBrowserCompat.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteMediaController {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/test/common/IRemoteMediaController.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteMediaControllerCompat {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/test/common/IRemoteMediaControllerCompat.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteMediaSession {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/test/common/IRemoteMediaSession.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteMediaSessionCompat {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/media2/test/common/IRemoteMediaSessionCompat.aidl"/>
+ </issue>
+
+ <issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://developer.android.com/kotlin/interop#nullability_annotations"
errorLine1=" public static void waitFor(final PollingCheckCondition condition) {"
diff --git a/privacysandbox/ui/integration-tests/testaidl/lint-baseline.xml b/privacysandbox/ui/integration-tests/testaidl/lint-baseline.xml
new file mode 100644
index 0000000..7319061
--- /dev/null
+++ b/privacysandbox/ui/integration-tests/testaidl/lint-baseline.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ISdkApi {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/privacysandbox/ui/integration/testaidl/ISdkApi.aidl"/>
+ </issue>
+
+</issues>
diff --git a/privacysandbox/ui/ui-core/lint-baseline.xml b/privacysandbox/ui/ui-core/lint-baseline.xml
index a313d36..c6aa1c9 100644
--- a/privacysandbox/ui/ui-core/lint-baseline.xml
+++ b/privacysandbox/ui/ui-core/lint-baseline.xml
@@ -10,4 +10,31 @@
file="src/main/java/androidx/privacysandbox/ui/core/SdkRuntimeUiLibVersions.kt"/>
</issue>
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IRemoteSessionClient {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/privacysandbox/ui/core/IRemoteSessionClient.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IRemoteSessionController {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/privacysandbox/ui/core/IRemoteSessionController.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface ISandboxedUiAdapter {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/privacysandbox/ui/core/ISandboxedUiAdapter.aidl"/>
+ </issue>
+
</issues>
diff --git a/room/integration-tests/testapp/lint-baseline.xml b/room/integration-tests/testapp/lint-baseline.xml
index cbbe2b6..aa5386e 100644
--- a/room/integration-tests/testapp/lint-baseline.xml
+++ b/room/integration-tests/testapp/lint-baseline.xml
@@ -164,6 +164,15 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ISampleDatabaseService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/room/integration/testapp/ISampleDatabaseService.aidl"/>
+ </issue>
+
+ <issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://developer.android.com/kotlin/interop#nullability_annotations"
errorLine1=" public String getName() {"
diff --git a/room/room-runtime/lint-baseline.xml b/room/room-runtime/lint-baseline.xml
index aea332b..e72c996 100644
--- a/room/room-runtime/lint-baseline.xml
+++ b/room/room-runtime/lint-baseline.xml
@@ -397,4 +397,22 @@
file="src/test/java/androidx/room/TransactionExecutorTest.kt"/>
</issue>
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IMultiInstanceInvalidationCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/room/IMultiInstanceInvalidationCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IMultiInstanceInvalidationService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/room/IMultiInstanceInvalidationService.aidl"/>
+ </issue>
+
</issues>
diff --git a/wear/tiles/tiles/lint-baseline.xml b/wear/tiles/tiles/lint-baseline.xml
new file mode 100644
index 0000000..6b98413
--- /dev/null
+++ b/wear/tiles/tiles/lint-baseline.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface ResourcesCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/tiles/ResourcesCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface TileCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/tiles/TileCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface TileProvider {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/tiles/TileProvider.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface TileUpdateRequesterService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/tiles/TileUpdateRequesterService.aidl"/>
+ </issue>
+
+</issues>
diff --git a/wear/watchface/watchface-complications-data/lint-baseline.xml b/wear/watchface/watchface-complications-data/lint-baseline.xml
index c1ad00d..43bf416 100644
--- a/wear/watchface/watchface-complications-data/lint-baseline.xml
+++ b/wear/watchface/watchface-complications-data/lint-baseline.xml
@@ -226,4 +226,40 @@
file="src/main/java/androidx/wear/watchface/complications/data/Type.kt"/>
</issue>
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IComplicationManager {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/complications/IComplicationManager.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IComplicationProvider {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/complications/IComplicationProvider.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="oneway interface IPreviewComplicationDataCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/complications/IPreviewComplicationDataCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IProviderInfoService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/complications/IProviderInfoService.aidl"/>
+ </issue>
+
</issues>
diff --git a/wear/watchface/watchface-data/lint-baseline.xml b/wear/watchface/watchface-data/lint-baseline.xml
index f6ad76f..c479c42 100644
--- a/wear/watchface/watchface-data/lint-baseline.xml
+++ b/wear/watchface/watchface-data/lint-baseline.xml
@@ -19,4 +19,94 @@
file="src/main/java/androidx/wear/watchface/data/WatchFaceColorsWireFormat.java"/>
</issue>
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IEditorObserver {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/editor/IEditorObserver.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IEditorService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/editor/IEditorService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IHeadlessWatchFace {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IHeadlessWatchFace.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IInteractiveWatchFace {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IInteractiveWatchFace.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IPendingInteractiveWatchFace {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IPendingInteractiveWatchFace.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IRemoteWatchFaceView {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IRemoteWatchFaceView.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IWatchFaceControlService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IWatchFaceControlService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IWatchFaceService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/watchface/IWatchFaceService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IWatchfaceListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IWatchfaceListener.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IWatchfaceReadyListener {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/control/IWatchfaceReadyListener.aidl"/>
+ </issue>
+
</issues>
diff --git a/wear/watchface/watchface-style/old-api-test-stub/lint-baseline.xml b/wear/watchface/watchface-style/old-api-test-stub/lint-baseline.xml
new file mode 100644
index 0000000..1441b88
--- /dev/null
+++ b/wear/watchface/watchface-style/old-api-test-stub/lint-baseline.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IStyleEchoService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/wear/watchface/style/test/IStyleEchoService.aidl"/>
+ </issue>
+
+</issues>
diff --git a/wear/wear-phone-interactions/lint-baseline.xml b/wear/wear-phone-interactions/lint-baseline.xml
new file mode 100644
index 0000000..229ded5
--- /dev/null
+++ b/wear/wear-phone-interactions/lint-baseline.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 8.1.0-alpha11" type="baseline" client="gradle" dependencies="false" name="AGP (8.1.0-alpha11)" variant="all" version="8.1.0-alpha11">
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IAuthenticationRequestCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/authentication/IAuthenticationRequestCallback.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IAuthenticationRequestService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/authentication/IAuthenticationRequestService.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with `@RequiresOptIn` marker"
+ errorLine1="interface IBridgingManagerService {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/android/support/wearable/notifications/IBridgingManagerService.aidl"/>
+ </issue>
+
+</issues>
diff --git a/work/work-runtime/lint-baseline.xml b/work/work-runtime/lint-baseline.xml
index 96d0027..e8a0ac0 100644
--- a/work/work-runtime/lint-baseline.xml
+++ b/work/work-runtime/lint-baseline.xml
@@ -263,6 +263,33 @@
</issue>
<issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with @RequiresOptIn marker"
+ errorLine1="oneway interface IListenableWorkerImpl {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/work/multiprocess/IListenableWorkerImpl.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with @RequiresOptIn marker"
+ errorLine1="oneway interface IWorkManagerImpl {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/work/multiprocess/IWorkManagerImpl.aidl"/>
+ </issue>
+
+ <issue
+ id="RequireUnstableAidlAnnotation"
+ message="Unstable AIDL files must be annotated with @RequiresOptIn marker"
+ errorLine1="oneway interface IWorkManagerImplCallback {"
+ errorLine2="^">
+ <location
+ file="src/main/aidl/androidx/work/multiprocess/IWorkManagerImplCallback.aidl"/>
+ </issue>
+
+ <issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://developer.android.com/kotlin/interop#nullability_annotations"
errorLine1=" public final void addListener(Runnable listener, Executor executor) {"