Extend VerifyPlaygroundGradleConfigurationTask to check all properties
This change is in response to a build breakage due to missing the gradle
property, `android.experimental.lint.missingBaselineIsEmptyBaseline=true`.
We previously only checked for values of playground properties that were
also declared in aosp due to playground needing a different subset of
those properties. We now use an allowlist to make that subset explicit
to avoid future breakages.
- Added an allowlist to ignore properties which we know to differ
between playground and aosp setups
Test: ./gradlew verifyPlaygroundGradleConfiguration
Change-Id: I8652e788954e8dd2577f0ac0a8816b7f320020a3
diff --git a/playground-common/androidx-shared.properties b/playground-common/androidx-shared.properties
index c31e4d0..d678753 100644
--- a/playground-common/androidx-shared.properties
+++ b/playground-common/androidx-shared.properties
@@ -25,21 +25,56 @@
# at configuration time.
org.gradle.jvmargs=-Xmx4g -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -XX:MaxMetaspaceSize=512m -Dkotlin.daemon.jvm.options=-XX:MaxMetaspaceSize=1g -Dlint.nullness.ignore-deprecated=true
+org.gradle.configureondemand=true
+org.gradle.parallel=true
+org.gradle.caching=true
+# Disabled due to https://github.com/gradle/gradle/issues/18626
+# org.gradle.vfs.watch=true
+org.gradle.dependency.verification.console=verbose
+org.gradle.unsafe.configuration-cache=true
+org.gradle.unsafe.configuration-cache-problems=warn
+org.gradle.unsafe.configuration-cache.max-problems=4000
+
+android.uniquePackageNames=false
+android.enableAdditionalTestOutput=true
android.useAndroidX=true
+android.nonTransitiveRClass=true
+android.disableAutomaticComponentCreation=true
+# Suppress pointless warning about mpp being experimental
+kotlin.mpp.stability.nowarn=true
+# Workaround for b/141364941
+android.forceJacocoOutOfProcess=true
+android.experimental.lint.missingBaselineIsEmptyBaseline=true
+
+# Generate versioned API files
+androidx.writeVersionedApiFiles=true
+
# Disable features we do not use
android.defaults.buildfeatures.aidl=false
android.defaults.buildfeatures.buildconfig=false
android.defaults.buildfeatures.renderscript=false
android.defaults.buildfeatures.resvalues=false
android.defaults.buildfeatures.shaders=false
-android.disableAutomaticComponentCreation=true
-android.experimental.lint.missingBaselineIsEmptyBaseline=true
-org.gradle.configureondemand=true
-org.gradle.parallel=true
-org.gradle.caching=true
-# Disabled due to https://github.com/gradle/gradle/issues/18626
-# org.gradle.vfs.watch=true
-org.gradle.unsafe.configuration-cache=true
-org.gradle.unsafe.configuration-cache-problems=warn
-org.gradle.unsafe.configuration-cache.max-problems=4000
+# do not automatically include stdlib
+kotlin.stdlib.default.dependency=false
+
+# https://b.corp.google.com/issues/227307216
+kotlin.mpp.absentAndroidTarget.nowarn=true
+
+# Enable adding baseline-prof.txt files to AAR artifacts
+android.experimental.enableArtProfiles=true
+
+# Disallow resolving dependencies at configuration time, which is a slight performance problem
+android.dependencyResolutionAtConfigurationTime.disallow=true
+android.suppressUnsupportedOptionWarnings=android.suppressUnsupportedOptionWarnings,android.dependencyResolutionAtConfigurationTime.disallow,android.experimental.lint.missingBaselineIsEmptyBaseline
+# Workaround for b/162074215
+android.includeDependencyInfoInApks=false
+
+# Properties we often want to toggle
+# ksp.version.check=false
+# androidx.compose.multiplatformEnabled=true
+
+# Do _not_ toggle or override unless you have read and understand this:
+# https://blog.jetbrains.com/kotlin/2021/10/important-ua-parser-js-exploit-and-kotlin-js/
+androidx.kmp.js.enabled=false