# # CI-specific Gradle properties. # # This file is copied to ~/.gradle/gradle.properties by the gradle-setup # composite action, overriding the dev-oriented values in the repo-root # gradle.properties. Inspired by the nowinandroid & sqldelight patterns. # # ── Daemon ──────────────────────────────────────────────────────────── # Single-use CI runners never reuse a daemon, so the startup cost is pure # overhead. Disabling it also avoids "daemon disappeared" warnings. org.gradle.daemon=false # ── Memory ──────────────────────────────────────────────────────────── # Standard GitHub runners have 7 GB RAM. Keep Gradle + Kotlin daemon # within budget (4g Gradle + 2g Kotlin daemon + 1g OS/tooling headroom). org.gradle.jvmargs=-Xmx4g -XX:+UseParallelGC -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8 kotlin.daemon.jvm.options=-Xmx2g -XX:+UseParallelGC # ── Parallelism ─────────────────────────────────────────────────────── org.gradle.parallel=true org.gradle.workers.max=4 # ── Caching & Configuration ────────────────────────────────────────── org.gradle.caching=true org.gradle.configuration-cache=true org.gradle.configureondemand=false org.gradle.vfs.watch=false org.gradle.isolated-projects=true # ── Kotlin ──────────────────────────────────────────────────────────── # Incremental compilation is wasted on fresh CI checkouts (no prior build # state to diff against). Disabling avoids the overhead of maintaining # incremental state that will never be reused. kotlin.incremental=false kotlin.code.style=official kotlin.parallel.tasks.in.project=true # ── KSP ────────────────────────────────────────────────────────────── # In CI, KSP incremental processing adds overhead without benefit (fresh # checkouts). Keep intermodule incremental off (no prior state). ksp.incremental=false ksp.run.in.process=true # ── Android ────────────────────────────────────────────────────────── android.experimental.lint.analysisPerComponent=true # Disable unused build features to reduce build time android.defaults.buildfeatures.resvalues=false android.defaults.buildfeatures.shaders=false # ── Misc ───────────────────────────────────────────────────────────── org.gradle.welcome=never