override fun apply()

in android/build-logic/convention/src/main/kotlin/com/theguardian/convention/ComposeLibraryConventionPlugin.kt [17:52]


    override fun apply(target: Project) {
        with(target) {
            apply {
                val id = libs.plugin("paparazzi").pluginId
                plugin(id)

                plugins.withId(id) {
                    // Defer until afterEvaluate so that testImplementation is created by Android plugin.
                    afterEvaluate {
                        dependencies.constraints {
                            add("testImplementation", "com.google.guava:guava") {
                                attributes {
                                    attribute(
                                        TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE,
                                        objects.named(
                                            TargetJvmEnvironment::class.java,
                                            TargetJvmEnvironment.STANDARD_JVM,
                                        ),
                                    )
                                }
                                because(
                                    """
                                        LayoutLib and sdk-common depend on Guava's -jre published 
                                        variant.See https://github.com/cashapp/paparazzi/issues/906.
                                    """.trimIndent(),
                                )
                            }
                        }
                    }
                }
            }

            val extension = extensions.getByType<LibraryExtension>()
            configureAndroidCompose(extension)
        }
    }