<?xml version="1.0" encoding="UTF-8"?>
<issues format="6" by="lint 8.9.0-alpha01" type="baseline" client="gradle" dependencies="false" name="AGP (8.9.0-alpha01)" variant="all" version="8.9.0-alpha01">

    <issue
        id="EagerGradleConfiguration"
        message="Use configureEach instead of whenTaskAdded"
        errorLine1="        project.tasks.whenTaskAdded { task ->"
        errorLine2="                      ~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/docs/AndroidXDocsImplPlugin.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method get"
        errorLine1="        val jvmJarTask = jvmJarTaskProvider.get()"
        errorLine2="                                            ~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/ErrorProneConfiguration.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method get"
        errorLine1="                    tasks.withType(JavaCompile::class.java).named(compileTaskName).get()"
        errorLine2="                                                                                   ~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/ErrorProneConfiguration.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method findByName"
        errorLine1="        if (tasks.findByName(&quot;check&quot;) != null) {"
        errorLine2="                  ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/Ktfmt.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method findByName"
        errorLine1="    tasks.findByName(taskName)"
        errorLine2="          ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Use named instead of getByName"
        errorLine1="                tasks.getByName(&quot;publishPluginMavenPublicationToMavenRepository&quot;).doFirst {"
        errorLine2="                      ~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Use named instead of getByName"
        errorLine1="                    tasks.getByName(&quot;publishMavenPublicationToMavenRepository&quot;).doFirst {"
        errorLine2="                          ~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method get"
        errorLine1="            val verifyOutputsTask = verifyOutputs.get()"
        errorLine2="                                                  ~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/Release.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Use configureEach instead of whenObjectAdded"
        errorLine1="    configurations.whenObjectAdded {"
        errorLine2="                   ~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/sources/SourceJarTaskHelper.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Use configureEach instead of whenObjectAdded"
        errorLine1="            it.artifacts.whenObjectAdded { _ ->"
        errorLine2="                         ~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/sources/SourceJarTaskHelper.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method findByName"
        errorLine1="            .findByName(FINALIZE_TEST_CONFIGS_WITH_APKS_TASK)!!"
        errorLine2="             ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/TestSuiteConfiguration.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method findByName"
        errorLine1="        project.rootProject.tasks.findByName(FINALIZE_TEST_CONFIGS_WITH_APKS_TASK)!!.dependsOn(task)"
        errorLine2="                                  ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/TestSuiteConfiguration.kt"/>
    </issue>

    <issue
        id="EagerGradleConfiguration"
        message="Avoid using method findByName"
        errorLine1="            if (project.tasks.findByName(&quot;check&quot;) != null) {"
        errorLine2="                              ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/sources/ValidateMultiplatformSourceSetNaming.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            val extensions = project.rootProject.extensions"
        errorLine2="                                     ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/AffectedModuleDetector.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                val compilerProject = project.rootProject.resolveProject(&quot;:compose&quot;)"
        errorLine2="                                              ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXComposeImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            project.rootProject.tasks.named(zipComposeMetricsTaskName).configure { zipTask ->"
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXComposeImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            project.rootProject.tasks.named(zipComposeReportsTaskName).configure { zipTask ->"
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXComposeImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    return project.rootProject.layout.buildDirectory"
        errorLine2="                   ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXComposeImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    return project.rootProject.layout.buildDirectory"
        errorLine2="                   ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXComposeImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    return File(rootProject.projectDir, &quot;../../external&quot;).canonicalFile"
        errorLine2="                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/AndroidXConfig.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use providers.gradleProperty instead of getProperties"
        errorLine1="    for (propertyName in project.properties.keys) {"
        errorLine2="                                 ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXGradleProperties.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                        AndroidXPlaygroundRootImplPlugin.projectOrArtifact(rootProject, this)"
        errorLine2="                                                                           ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method findProject"
        errorLine1="                    allProjectsExist || findProject(otherGradlePath) != null"
        errorLine2="                                        ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                    project.rootProject.rootDir == project.getSupportRootFolder()"
        errorLine2="                            ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    rootProject.extensions.findByType&lt;NodeJsRootExtension>()?.let { nodeJs ->"
        errorLine2="    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXMultiplatformExtension.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    rootProject.extensions.findByType(YarnRootExtension::class.java)?.let { yarn ->"
        errorLine2="    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXMultiplatformExtension.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method findProject"
        errorLine1="            val requested = rootProject.findProject(path)"
        errorLine2="                                        ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXPlaygroundRootImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                project.rootProject.tasks.named(NAME).configure { it.dependsOn(task) }"
        errorLine2="                        ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXPlaygroundRootImplPlugin.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    rootProject.layout.buildDirectory.dir(&quot;test-xml-configs&quot;)"
        errorLine2="    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/BuildServerConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    rootProject.layout.buildDirectory.dir(&quot;privacysandbox-files&quot;)"
        errorLine2="    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/BuildServerConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    val actualRootProject = if (project.isRoot) project else project.rootProject"
        errorLine2="                                                                     ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/BuildServerConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    rootProject.tasks.named(CREATE_AGGREGATE_BUILD_INFO_FILES_TASK).configure {"
        errorLine2="    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateAggregateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    get() = this == rootProject"
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/gradle/Extensions.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use providers.gradleProperty instead of getProperties"
        errorLine1="        val pathPrefixes = (properties[PROP_PATH_PREFIX] as String).split(&quot;,&quot;)"
        errorLine2="                            ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/FilteredAnchorTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use providers.gradleProperty instead of getProperties"
        errorLine1="            val taskName = properties[PROP_TASK_NAME] as String"
        errorLine2="                           ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/FilteredAnchorTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                    rootProject.tasks.named(GLOBAL_TASK_NAME).configure { task ->"
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/FilteredAnchorTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use providers.gradleProperty instead of getProperties"
        errorLine1="            task.pathPrefix = properties[PROP_PATH_PREFIX] as String"
        errorLine2="                              ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/FilteredAnchorTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use providers.gradleProperty instead of getProperties"
        errorLine1="            task.taskName = properties[PROP_TASK_NAME] as String"
        errorLine2="                            ~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/FilteredAnchorTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            it.parameters.workingDir.set(rootProject.layout.projectDirectory)"
        errorLine2="                                         ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/gitclient/GitClient.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method getParent"
        errorLine1="                    ${project.parent}."
        errorLine2="                              ~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/java/JavaCompileInputs.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        val rootBaseDir = if (compilerDaemonDisabled) projectDir else rootProject.projectDir"
        errorLine2="                                                                      ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/KonanPrebuiltsSetup.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method findProject"
        errorLine1="    return project.rootProject.findProject(path)"
        errorLine2="                               ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="    return project.rootProject.findProject(path)"
        errorLine2="                   ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method findProject"
        errorLine1="        project.rootProject.findProject(&quot;:lint:lint-gradle&quot;)?.let {"
        errorLine2="                            ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        project.rootProject.findProject(&quot;:lint:lint-gradle&quot;)?.let {"
        errorLine2="                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        val tasksByOutput = project.rootProject.findAllTasksByOutput()"
        errorLine2="                                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/ListTaskOutputsTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method findProject"
        errorLine1="            project.findProject(projectPath)?.plugins?.let { plugins ->"
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        rootProject.tasks.named(CREATE_MODULE_INFO).configure {"
        errorLine2="        ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/OwnersService.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        project.rootProject.gradle.sharedServices.registerIfAbsent("
        errorLine2="                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/ProjectParser.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                regenerate(project.rootProject, groupId, artifactId, artifactVersion, location)"
        errorLine2="                                   ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/metalava/RegenerateOldApisTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            regenerate(project.rootProject, groupId, artifactId, version, location)"
        errorLine2="                               ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/metalava/RegenerateOldApisTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="            project.rootProject.maybeRegister("
        errorLine2="                    ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/Release.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="                        project.rootProject.getRepositoryDirectory()"
        errorLine2="                                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/Release.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        return project.rootProject.maybeRegister("
        errorLine2="                       ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/Release.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        val localPropsFile = rootProject.projectDir.resolve(&quot;local.properties&quot;)"
        errorLine2="                             ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/SdkHelper.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        project.rootProject.rootDir.toRelativeString(project.projectDir)"
        errorLine2="                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*3}/androidx/build/SdkResourceGenerator.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        (project.rootProject.extensions.extraProperties).let { it.get(&quot;supportRootFolder&quot;) as File }"
        errorLine2="                 ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/studio/StudioTask.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        rootProject.tasks"
        errorLine2="        ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/TestSuiteConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Avoid using method getParent"
        errorLine1="    val parentProject = project.parent!!"
        errorLine2="                                ~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/TestSuiteConfiguration.kt"/>
    </issue>

    <issue
        id="GradleProjectIsolation"
        message="Use isolated.rootProject instead of getRootProject"
        errorLine1="        project.rootProject.tasks.findByName(FINALIZE_TEST_CONFIGS_WITH_APKS_TASK)!!.dependsOn(task)"
        errorLine2="                ~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/testConfiguration/TestSuiteConfiguration.kt"/>
    </issue>

    <issue
        id="InternalAgpApiUsage"
        message="Avoid using internal Android Gradle Plugin APIs"
        errorLine1="import com.android.build.gradle.internal.lint.AndroidLintAnalysisTask"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="InternalAgpApiUsage"
        message="Avoid using internal Android Gradle Plugin APIs"
        errorLine1="import com.android.build.gradle.internal.lint.LintModelWriterTask"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="InternalAgpApiUsage"
        message="Avoid using internal Android Gradle Plugin APIs"
        errorLine1="import com.android.build.gradle.internal.lint.VariantInputs"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/LintConfiguration.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.artifacts.dependencies.DefaultExternalModuleDependency"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.artifacts.dependencies.DefaultProjectDependencyConstraint"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.artifacts.ivyservice.projectmodule.ProjectComponentPublication"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.component.SoftwareComponentInternal"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.publish.maven.internal.publication.MavenPublicationInternal"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/buildInfo/CreateLibraryBuildInfoFileTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.logging.slf4j.OutputEventListenerBackedLogger"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/FileLogger.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/FileLogger.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.time.Clock"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/FileLogger.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.component.external.model.DefaultModuleComponentIdentifier"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dackka/GenerateMetadataTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.component.SoftwareComponentInternal"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.component.UsageContext"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.publish.maven.internal.publication.MavenPublicationInternal"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/MavenUploadHelper.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.artifacts.ivyservice.TypedResolveException"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/metalava/RegenerateOldApisTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.api.internal.tasks.userinput.UserInputHandler"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/studio/StudioTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.service.ServiceRegistry"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/studio/StudioTask.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.logging.slf4j.OutputEventListenerBackedLogger"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/ToStringLogger.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/ToStringLogger.kt"/>
    </issue>

    <issue
        id="InternalGradleApiUsage"
        message="Avoid using internal Gradle APIs"
        errorLine1="import org.gradle.internal.time.Clock"
        errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/dependencyTracker/ToStringLogger.kt"/>
    </issue>

    <issue
        id="WithPluginClasspathUsage"
        message="Avoid usage of GradleRunner#withPluginClasspath, which is broken. Instead use something like https://github.com/autonomousapps/dependency-analysis-gradle-plugin/tree/main/testkit#gradle-testkit-support-plugin"
        errorLine1="                .withPluginClasspath()"
        errorLine2="                 ~~~~~~~~~~~~~~~~~~~">
        <location
            file="src/test/java/androidx/build/buildInfo/CreateLibraryBuildInfoFileTaskTest.kt"/>
    </issue>

    <issue
        id="WithTypeWithoutConfigureEach"
        message="Avoid passing a closure to withType, use withType().configureEach instead"
        errorLine1="        project.tasks.withType(AbstractTestTask::class.java) { task ->"
        errorLine2="                      ~~~~~~~~">
        <location
            file="${:buildSrc-tests*main*MAIN*sourceProvider*0*javaDir*4}/androidx/build/AndroidXImplPlugin.kt"/>
    </issue>

</issues>
