org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.caching=true

# Enable filesystem watching
org.gradle.vfs.watch=true

# Enable Kotlin incremental compilation
kotlin.incremental=true

# Enable parallel tasks execution for Kotlin Gradle plugin
kotlin.parallel.tasks.in.project=true

# Kotlin code style
kotlin.code.style=official

# Turn off AP discovery in compile path to enable compile avoidance
kapt.include.compile.classpath=false

# Enable R8 full mode
android.enableR8.fullMode=true

# Enable AndroidX
android.useAndroidX=true

# Enable non-transitive R class namespacing where each library only contains
# references to the resources it declares instead of declarations plus all
# transitive dependency references.
android.nonTransitiveRClass=true

# Generate compile-time only R class for app modules.
# Broke on AGP 7.0.0-alpha08
# android.enableAppCompileTimeRClass=true

# Experimental flags
android.keepWorkerActionServicesBetweenBuilds=true
android.nonFinalResIds=true
android.enableRTxtResourceShrinking=true
android.enablePartialRIncrementalBuilds=true
android.experimental.enableNewResourceShrinker=true
android.experimental.enableNewResourceShrinker.preciseShrinking=true
android.generateManifestClass=true

# Default Android build features
android.defaults.buildfeatures.buildconfig=false
android.defaults.buildfeatures.aidl=false
android.defaults.buildfeatures.renderscript=false
android.defaults.buildfeatures.resvalues=false
android.defaults.buildfeatures.shaders=false
android.library.defaults.buildfeatures.androidresources=false

# Disable KMP warning
kotlin.mpp.stability.nowarn=true
