Merge "Update to AGP 7.3.0-alpha08" into androidx-main
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt b/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
index 564b0a8..bf0b082 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/LintConfiguration.kt
@@ -280,19 +280,7 @@
             lintConfig = File(project.getSupportRootFolder(), lintXmlPath)
         }
 
-        val lintBaselineFile = lintBaseline.get().asFile
-        // If we give lint the filepath of a baseline file, then:
-        //   If the file does not exist, lint will write new violations to it
-        //   If the file does exist, lint will read extemptions from it
-
-        // So, if we want to update the baselines, we need to give lint an empty location
-        // to save to.
-
-        // If we're not updating the baselines, then we want lint to check for new errors.
-        // This requires us only pass a baseline to lint if one already exists.
-        if (lintBaselineFile.exists()) {
-            baseline = lintBaselineFile
-        }
+        baseline = lintBaseline.get().asFile
     }
 }
 
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/ListTaskOutputsTask.kt b/buildSrc/private/src/main/kotlin/androidx/build/ListTaskOutputsTask.kt
index 666e107..aa24928 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/ListTaskOutputsTask.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/ListTaskOutputsTask.kt
@@ -16,6 +16,7 @@
 
 package androidx.build
 
+import java.io.File
 import org.gradle.api.DefaultTask
 import org.gradle.api.GradleException
 import org.gradle.api.Project
@@ -24,7 +25,6 @@
 import org.gradle.api.tasks.Input
 import org.gradle.api.tasks.OutputFile
 import org.gradle.api.tasks.TaskAction
-import java.io.File
 
 /**
  * Finds the outputs of every task and saves this mapping into a file
@@ -120,18 +120,6 @@
     "generateReleaseProtos",
     // Release APKs
     "copyReleaseApk",
-    // To-be removed when we can use updateLintBaselineDebug
-    "replaceLintBaseline",
-    "updateLintBaselineDebug",
-    // b/224564238
-    "updateLintBaselineWithExpandProjectionDebug",
-    "updateLintBaselineWithExpandProjectionRelease",
-    "updateLintBaselineWithNullAwareTypeConverterDebug",
-    "updateLintBaselineWithNullAwareTypeConverterRelease",
-    "updateLintBaselineWithoutExpandProjectionDebug",
-    "updateLintBaselineWithoutExpandProjectionRelease",
-    "updateLintBaselineWithoutNullAwareTypeConverterDebug",
-    "updateLintBaselineWithoutNullAwareTypeConverterRelease",
     // b/223733695
     "pixel2api31DebugAndroidTest",
     "pixel2api31ReleaseAndroidTest",
@@ -165,11 +153,17 @@
     "pixel2api29TargetSdkLatestDebugAndroidTest",
 )
 
+val taskTypesKnownToDuplicateOutputs = setOf(
+    // b/224564238
+    "com.android.build.gradle.internal.lint.AndroidLintTask_Decorated"
+)
+
 fun shouldValidateTaskOutput(task: Task): Boolean {
     if (!task.enabled) {
         return false
     }
-    return !taskNamesKnownToDuplicateOutputs.contains(task.name)
+    return !taskNamesKnownToDuplicateOutputs.contains(task.name) &&
+        !taskTypesKnownToDuplicateOutputs.contains(task::class.qualifiedName)
 }
 
 // For this project and all subprojects, collects all tasks and creates a map keyed by their output files
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/docs/AndroidXDocsImplPlugin.kt b/buildSrc/private/src/main/kotlin/androidx/build/docs/AndroidXDocsImplPlugin.kt
index 71891d3..ebef400 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/docs/AndroidXDocsImplPlugin.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/docs/AndroidXDocsImplPlugin.kt
@@ -568,6 +568,7 @@
         project.tasks.whenTaskAdded { task ->
             if (task is Test || task.name.startsWith("assemble") ||
                 task.name == "lint" ||
+                task.name == "lintDebug" ||
                 task.name == "lintAnalyzeDebug" ||
                 task.name == "transformDexArchiveWithExternalLibsDexMergerForPublicDebug" ||
                 task.name == "transformResourcesWithMergeJavaResForPublicDebug" ||
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt b/buildSrc/private/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
index cba832b..f21b14a 100644
--- a/buildSrc/private/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
+++ b/buildSrc/private/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
@@ -186,44 +186,6 @@
     // Flakily not up-to-date, b/176120659
     "doclavaDocs",
 
-    // We should be able to remove these entries when b/160392650 is fixed
-    "lint",
-    "lintAnalyzeDebug",
-    "lintBundledDebug",
-    "lintUnbundledDebug",
-    "lintDebug",
-    "lintVitalDebug",
-    "lintWithExpandProjectionDebug",
-    "lintWithoutExpandProjectionDebug",
-    "lintWithNullAwareTypeConverterDebug",
-    "lintWithKaptDebug",
-    "lintWithKspDebug",
-    "lintTargetSdk29Debug",
-    "lintTargetSdk30Debug",
-    "lintTargetSdkLatestDebug",
-
-    // b/223287425
-    "lintReportWithKaptDebug",
-    "lintAnalyzeWithKaptDebug",
-    "lintReportWithKspDebug",
-    "lintAnalyzeWithKspDebug",
-    "lintReportTargetSdk29Debug",
-    "lintAnalyzeTargetSdk29Debug",
-    "lintReportBundledDebug",
-    "lintAnalyzeBundledDebug",
-    "lintReportUnbundledDebug",
-    "lintAnalyzeUnbundledDebug",
-    "lintReportTargetSdk30Debug",
-    "lintAnalyzeTargetSdk30Debug",
-    "lintReportTargetSdkLatestDebug",
-    "lintAnalyzeTargetSdkLatestDebug",
-    "lintReportWithNullAwareTypeConverterDebug",
-    "lintAnalyzeWithNullAwareTypeConverterDebug",
-    "lintReportWithoutExpandProjectionDebug",
-    "lintAnalyzeWithoutExpandProjectionDebug",
-    "lintReportWithExpandProjectionDebug",
-    "lintAnalyzeWithExpandProjectionDebug",
-
     // We know that these tasks are never up to date due to maven-metadata.xml changing
     // https://github.com/gradle/gradle/issues/11203
     "partiallyDejetifyArchive",
@@ -231,6 +193,14 @@
     "createArchive"
 )
 
+val DONT_TRY_RERUNNING_TASK_TYPES = setOf(
+    "com.android.build.gradle.internal.lint.AndroidLintTextOutputTask_Decorated",
+    // lint report tasks
+    "com.android.build.gradle.internal.lint.AndroidLintTask_Decorated",
+    // lint analysis tasks b/223287425
+    "com.android.build.gradle.internal.lint.AndroidLintAnalysisTask_Decorated",
+)
+
 @Suppress("UnstableApiUsage") // usage of BuildService that's incubating
 abstract class TaskUpToDateValidator :
     BuildService<TaskUpToDateValidator.Parameters>, OperationCompletionListener {
@@ -289,7 +259,8 @@
         private fun shouldTryRerunningTask(task: Task): Boolean {
             return !(
                 DONT_TRY_RERUNNING_TASKS.contains(task.name) ||
-                    DONT_TRY_RERUNNING_TASKS.contains(task.path)
+                    DONT_TRY_RERUNNING_TASKS.contains(task.path) ||
+                    DONT_TRY_RERUNNING_TASK_TYPES.contains(task::class.qualifiedName)
                 )
         }
 
diff --git a/datastore/datastore-multiprocess/lint-baseline.xml b/datastore/datastore-multiprocess/lint-baseline.xml
new file mode 100644
index 0000000..46c783e
--- /dev/null
+++ b/datastore/datastore-multiprocess/lint-baseline.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 7.3.0-alpha08" type="baseline" client="gradle" dependencies="false" name="AGP (7.3.0-alpha08)" variant="all" version="7.3.0-alpha08">
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `ParcelFileDescriptor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            ).use {"
+        errorLine2="              ~~~">
+        <location
+            file="src/main/java/androidx/datastore/multiprocess/SharedCounter.kt"
+            line="74"
+            column="15"/>
+    </issue>
+
+</issues>
diff --git a/development/update_studio.sh b/development/update_studio.sh
index 464747e..b47e945 100755
--- a/development/update_studio.sh
+++ b/development/update_studio.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
 # Get versions
-AGP_VERSION=${1:-7.3.0-alpha07}
-STUDIO_VERSION_STRING=${2:-"Android Studio Dolphin (2021.3.1) Canary 7"}
+AGP_VERSION=${1:-7.3.0-alpha08}
+STUDIO_VERSION_STRING=${2:-"Android Studio Dolphin (2021.3.1) Canary 8"}
 STUDIO_IFRAME_LINK=`curl "https://developer.android.com/studio/archive.html" | grep iframe | sed "s/.*src=\"\([a-zA-Z0-9\/\._]*\)\".*/https:\/\/android-dot-devsite-v2-prod.appspot.com\1/g"`
 STUDIO_LINK=`curl -s $STUDIO_IFRAME_LINK | grep -C30 "$STUDIO_VERSION_STRING" | grep Linux | tail -n 1 | sed 's/.*a href="\(.*\).*"/\1/g'`
 STUDIO_VERSION=`echo $STUDIO_LINK | sed "s/.*ide-zips\/\(.*\)\/android-studio-.*/\1/g"`
diff --git a/gradle.properties b/gradle.properties
index 23c272b..be96a8f 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -20,6 +20,7 @@
 kotlin.mpp.stability.nowarn=true
 # Workaround for b/141364941
 android.forceJacocoOutOfProcess=true
+android.experimental.lint.missingBaselineIsEmptyBaseline=true
 
 # Generate versioned API files
 androidx.writeVersionedApiFiles=true
@@ -42,8 +43,7 @@
 
 # Disallow resolving dependencies at configuration time, which is a slight performance problem
 android.dependencyResolutionAtConfigurationTime.disallow=true
-android.suppressUnsupportedOptionWarnings=android.suppressUnsupportedOptionWarnings,android.dependencyResolutionAtConfigurationTime.disallow
-
+android.suppressUnsupportedOptionWarnings=android.suppressUnsupportedOptionWarnings,android.dependencyResolutionAtConfigurationTime.disallow,android.experimental.lint.missingBaselineIsEmptyBaseline
 # Workaround for b/162074215
 android.includeDependencyInfoInApks=false
 
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 45b4760..d4127fd 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -2,13 +2,13 @@
 # -----------------------------------------------------------------------------
 # All of the following should be updated in sync.
 # -----------------------------------------------------------------------------
-androidGradlePlugin = "7.3.0-alpha07"
+androidGradlePlugin = "7.3.0-alpha08"
 # NOTE: When updating the lint version we also need to update the `api` version
 # supported by `IssueRegistry`'s.' For e.g. r.android.com/1331903
-androidLint = "30.3.0-alpha07"
+androidLint = "30.3.0-alpha08"
 # Once you have a chosen version of AGP to upgrade to, go to
 # https://developer.android.com/studio/archive and find the matching version of Studio.
-androidStudio = "2021.3.1.7"
+androidStudio = "2021.3.1.8"
 # -----------------------------------------------------------------------------
 
 androidGradlePluginMin = "7.0.4"
diff --git a/gradle/verification-keyring.keys b/gradle/verification-keyring.keys
index 0ab424a..b069851b 100644
--- a/gradle/verification-keyring.keys
+++ b/gradle/verification-keyring.keys
@@ -10146,3 +10146,132 @@
 Pt2uco8an9pO9/oqU6vlZUr38w==
 =alQS
 -----END PGP PUBLIC KEY BLOCK-----
+
+pub    D041CAD2E452550F
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: Hostname:
+Version: Hockeypuck ~unreleased
+
+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
+f8npB1l1fT5cozzQJkPVYzhBWH1KXP5X
+=qJgQ
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub    E16AB52D79FD224F
+sub    5A34A5E06B936F93
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v1.68
+
+mQENBFF/4bYBCADTeOLZiVGNbjlPrwG7UcMl+yXmEqpf9dB1A9cuicH3PWXj0WOb
+LSzHjzoRvRekEqSUmgoveey1lPuA2qjOUkXY6Kiyx+oLiG0/ObJHUQW2O+tjSQ0R
+ZXKd4ftaw65SLbwYO2JHzj5fLC9j2mZQiRjGs1bWM58c/dOKp1XaOc1/ffcl3L3q
+Up64jWH9r3yhPemh5SHo47UxNvItdaJJYnt20azpZj9oq1ebUuQFMaQDc/RTALhf
+Xb4BWO+z2PCmChz60i/Ko2ZKPJV2TqPqWO+aklgxTTwZZ0IvgFm/5n3Dtn5p5iGf
+qwKkHPJIDWc8cWYtxC608LFdqiAlYmp/oPi5ABEBAAG5AQ0EUX/htgEIALToF36j
+45OitNd4k17BSZJKnuS3uIL3tTw0fRqLv0/3EBaj4zD5Qc5YTKFgM66Bb5ybI63c
+wYhfSBHP2ZRS7oNdDbPd/30jDKNvmcDjIhGLT7bZJwC9SJVifHuvtzr6wBR8xoIt
+yYva5D3ax8ZvnzqIbMPeHou+0ZnRYSPjy2c2TxAJTjDOG461h9mVXDdK74wL8kQs
+IxqqYRIeEdmrXMrd/B8IPwuIv8w7LwzadNgRnXaJ5Q5bnMvvhVLnWKRt5aiQVBxc
+67FTujjqFF4Y/1UJb311K+1LSqNrTT7As8nhf2Gu/Gb47kw1bb7wBdKv2Swx5mYq
+iW5+ARQU7jCiUVkAEQEAAYkBHwQYAQIACQUCUX/htgIbDAAKCRDharUtef0iT2Sy
+CADAznSkG/8EdIU5UQhp/lY9h3WLzYI7aARw0IA6O4ijGLwcytO7TaWjEzUCMZdw
+01vAjVH1xNn9QvTgQV+2GyqyBNsjmgGt5/tK/+JtMgXUwr8+KsBf3908rOqAAZ3Y
+GyM9N8sRsyfPB/PHfv289sL2IKPxiFTGI0NGS3qOAKQ5TZvV7OPsP5+yHfeJG/Xh
+CW8p+nkMGpH4rE8Z6NKgLe/WC6J36aQ4kBfYneueH90Dc400rfGyL+0Gn1Rzuj2K
+FuUFK6q/GBlFaNo0azCqtdpcO6C3GpJYtISxpQ1Rp9kSEzSCL3tOli8Xs6gsruc+
+vCSIy8lzRw19ZO9G7qhjcHLc
+=vO0K
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub    3AD93C3C677A106E
+uid    Carl Mastrangelo <[email protected]>
+
+sub    9B2A1B698A113AAD
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v1.68
+
+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
+U/UZPX6m9g==
+=XXe6
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 309ab4d..6391f57 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -59,7 +59,6 @@
          <trusted-key id="190d5a957ff22273e601f7a7c92c5fec70161c62" group="org.codehaus.mojo"/>
          <trusted-key id="19beab2d799c020f17c69126b16698a4adf4d638">
             <trusting group="org.checkerframework"/>
-            <trusting group="org.checkerframework" name="checker-qual"/>
          </trusted-key>
          <trusted-key id="1b2718089ce964b8" group="com.thoughtworks.qdox"/>
          <trusted-key id="1bc86444bbd2a24c3a40904a438e9634a2319637" group="co.nstant.in" name="cbor"/>
@@ -106,6 +105,7 @@
             <trusting group="org.apache.maven"/>
             <trusting group="org.apache.maven.wagon"/>
          </trusted-key>
+         <trusted-key id="314fe82e5a4c5377bca2edec5208812e1e4a6db0" group="com.gradle"/>
          <trusted-key id="31bae2e51d95e0f8ad9b7bcc40a3c4432bd7308c" group="com.googlecode.juniversalchardet"/>
          <trusted-key id="31fae244a81d64507b47182e1b2718089ce964b8" group="com.thoughtworks.qdox" name="qdox"/>
          <trusted-key id="3288b8be8512d6c0ca185268c51e6cbc7ff46f0b">
@@ -117,6 +117,7 @@
          <trusted-key id="34441e504a937f43eb0daef96a65176a0fb1cd0b" group="org.codehaus.groovy"/>
          <trusted-key id="353a436e043e3145" group="com.google.code.findbugs"/>
          <trusted-key id="3872ed7d5904493d23d78fa2c4c8cb73b1435348" group="com.android.tools.build"/>
+         <trusted-key id="3ad93c3c677a106e" group="io.perfmark"/>
          <trusted-key id="3c0a8f4744f37328" group="com.github.ben-manes.caffeine"/>
          <trusted-key id="3c27d97b0c83a85c" group="com.google.errorprone"/>
          <trusted-key id="3d11126ea77e4e07fbabb38614a84c976d265b25" group="com.google.protobuf"/>
@@ -134,6 +135,7 @@
          <trusted-key id="438e9634a2319637" group="co.nstant.in"/>
          <trusted-key id="44ce7bf2825ea2cd" group="com.ibm.icu"/>
          <trusted-key id="461a804f2609fd89" group="com.github.shyiko.klob"/>
+         <trusted-key id="47504b76cf89c15c0512d9afe16ab52d79fd224f" group="com.google.api.grpc"/>
          <trusted-key id="47586a1b75ef0de5" group="com.squareup.wire"/>
          <trusted-key id="475f3b8e59e6e63aa78067482c7b12f2a511e325" group="org.slf4j"/>
          <trusted-key id="476634a4694e716a" group="com.googlecode.java-diff-utils"/>
@@ -330,6 +332,7 @@
          <trusted-key id="c2148900bcd3c2af" group="org.jetbrains.trove4j"/>
          <trusted-key id="c29b11246382a4d7" group="com.charleskorn.kaml"/>
          <trusted-key id="c51e6cbc7ff46f0b" group="com.google.auto.service"/>
+         <trusted-key id="c6f7d1c804c821f49af3bfc13ad93c3c677a106e" group="io.perfmark" name="perfmark-api"/>
          <trusted-key id="c70b844f002f21f6d2b9c87522e44ac0622b91c3" group="com.beust" name="jcommander"/>
          <trusted-key id="c7be5bcc9fec15518cfda882b0f3710fa64900e7">
             <trusting group="com.google.auto.value"/>
@@ -354,6 +357,7 @@
          </trusted-key>
          <trusted-key id="cf9f3090ce4cb752" group="org.abego.treelayout"/>
          <trusted-key id="cfae163b64ac9189" group="org.jetbrains.skiko"/>
+         <trusted-key id="d041cad2e452550f" group="com.google.protobuf"/>
          <trusted-key id="d196a5e3e70732eeb2e5007f1861c322c56014b2" group="commons-lang"/>
          <trusted-key id="d4c89ea4aaf455fd88b22087efe8086f9e93774e" group="junit"/>
          <trusted-key id="d4da5eab3cd7e958" group="com.google.devtools.ksp"/>
@@ -369,6 +373,7 @@
          <trusted-key id="dddafa7674e54418" group="org.testng"/>
          <trusted-key id="e0130a3ed5a2079e" group="org.webjars"/>
          <trusted-key id="e0cb7823cfd00fbf" group="com.jakewharton.android.repackaged"/>
+         <trusted-key id="e16ab52d79fd224f" group="com.google.api.grpc"/>
          <trusted-key id="e62231331bca7e1f292c9b88c1b12a5d99c0729d" group="org.jetbrains"/>
          <trusted-key id="e77417ac194160a3fabd04969a259c7ee636c5ed">
             <trusting group="com.google.errorprone"/>
diff --git a/paging/integration-tests/testapp/lint-baseline.xml b/paging/integration-tests/testapp/lint-baseline.xml
index 228f506..7487fb1 100644
--- a/paging/integration-tests/testapp/lint-baseline.xml
+++ b/paging/integration-tests/testapp/lint-baseline.xml
@@ -1,5 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<issues format="6" by="lint 7.3.0-alpha07" type="baseline" client="cli" dependencies="false" name="AGP (7.3.0-alpha07)" variant="all" version="7.3.0-alpha07">
+<issues format="6" by="lint 7.3.0-alpha08" type="baseline" client="gradle" dependencies="false" name="AGP (7.3.0-alpha08)" variant="all" version="7.3.0-alpha08">
+
+    <issue
+        id="MissingInflatedId"
+        message="`@layout/activity_recycler_view` does not contain a declaration with id `addButton`"
+        errorLine1="        final Button addButton = findViewById(R.id.addButton);"
+        errorLine2="                                              ~~~~~~~~~~~~~~">
+        <location
+            file="src/main/java/androidx/paging/integration/testapp/room/RoomPagedListRxActivity.java"
+            line="51"
+            column="47"/>
+    </issue>
+
+    <issue
+        id="MissingInflatedId"
+        message="`@layout/activity_recycler_view` does not contain a declaration with id `clearButton`"
+        errorLine1="        final Button clearButton = findViewById(R.id.clearButton);"
+        errorLine2="                                                ~~~~~~~~~~~~~~~~">
+        <location
+            file="src/main/java/androidx/paging/integration/testapp/room/RoomPagedListRxActivity.java"
+            line="54"
+            column="49"/>
+    </issue>
 
     <issue
         id="SyntheticAccessor"
@@ -232,15 +254,4 @@
             column="35"/>
     </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 abstract CustomerDao getCustomerDao();"
-        errorLine2="                    ~~~~~~~~~~~">
-        <location
-            file="src/main/java/androidx/paging/integration/testapp/room/SampleDatabase.java"
-            line="30"
-            column="21"/>
-    </issue>
-
 </issues>
diff --git a/sqlite/sqlite-framework/lint-baseline.xml b/sqlite/sqlite-framework/lint-baseline.xml
new file mode 100644
index 0000000..0a7e727
--- /dev/null
+++ b/sqlite/sqlite-framework/lint-baseline.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<issues format="6" by="lint 7.3.0-alpha08" type="baseline" client="gradle" dependencies="false" name="AGP (7.3.0-alpha08)" variant="all" version="7.3.0-alpha08">
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `Cursor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            db.query(&quot;SELECT * FROM sqlite_master WHERE name = &apos;Foo&apos;&quot;).use {"
+        errorLine2="                                                                       ~~~">
+        <location
+            file="src/androidTest/java/androidx/sqlite/db/framework/OpenHelperRecoveryTest.kt"
+            line="46"
+            column="72"/>
+    </issue>
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `Cursor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            db.query(&quot;SELECT * FROM sqlite_master WHERE name = &apos;Foo&apos;&quot;).use {"
+        errorLine2="                                                                       ~~~">
+        <location
+            file="src/androidTest/java/androidx/sqlite/db/framework/OpenHelperRecoveryTest.kt"
+            line="69"
+            column="72"/>
+    </issue>
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `Cursor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            db.query(&quot;SELECT * FROM sqlite_master WHERE name = &apos;Foo&apos;&quot;).use {"
+        errorLine2="                                                                       ~~~">
+        <location
+            file="src/androidTest/java/androidx/sqlite/db/framework/OpenHelperRecoveryTest.kt"
+            line="80"
+            column="72"/>
+    </issue>
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `Cursor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            db.query(&quot;SELECT * FROM sqlite_master WHERE name = &apos;Foo&apos;&quot;).use {"
+        errorLine2="                                                                       ~~~">
+        <location
+            file="src/androidTest/java/androidx/sqlite/db/framework/OpenHelperRecoveryTest.kt"
+            line="176"
+            column="72"/>
+    </issue>
+
+    <issue
+        id="NewApi"
+        message="Implicit cast from `Cursor` to `Closeable` requires API level 16 (current min is 14)"
+        errorLine1="            db.query(&quot;SELECT * FROM sqlite_master WHERE name = &apos;Foo&apos;&quot;).use {"
+        errorLine2="                                                                       ~~~">
+        <location
+            file="src/androidTest/java/androidx/sqlite/db/framework/OpenHelperRecoveryTest.kt"
+            line="204"
+            column="72"/>
+    </issue>
+
+</issues>