Skip to content

build(gradle): enable configuration cache, drop configuration-on-demand#972

Merged
bmc08gt merged 3 commits into
code-payments:code/cashfrom
bmc08gt:build/config-cache-enabled
Jun 24, 2026
Merged

build(gradle): enable configuration cache, drop configuration-on-demand#972
bmc08gt merged 3 commits into
code-payments:code/cashfrom
bmc08gt:build/config-cache-enabled

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator

Turn on org.gradle.configuration-cache and remove the now-superseded
org.gradle.configureondemand (configuration-on-demand is incompatible with
the configuration cache). Builds on the cross-project config removal from
#971, which cleared the root-script barriers to a cacheable configuration
phase.

bmc08gt added 2 commits June 24, 2026 02:20
Turn on org.gradle.configuration-cache and remove the now-superseded
org.gradle.configureondemand (configuration-on-demand is incompatible with
the configuration cache). Builds on the cross-project config removal from
code-payments#971, which cleared the root-script barriers to a cacheable configuration
phase.

Validated locally: full configuration of all modules succeeds with zero
configuration-cache problems, the entry is reused across runs, and a module
unit test executes and reuses the cache. Problems fail the build by default,
so CI enforces a clean configuration phase. This is also the prerequisite for
enabling Isolated Projects later.
Replace cross-project root access that Isolated Projects forbids with the
IP-safe equivalents, without changing behavior:

- compose convention plugin & app: rootProject.layout.projectDirectory ->
  isolated.rootProject.projectDirectory for the stability config file.
- ContributorsSignatory: take the root directory as a File instead of a
  Project, so callers no longer invoke Project.file on the root project.
  Path resolution is unchanged (relative against root, absolute as-is).

Verified under the configuration cache (already enabled): full configuration
succeeds with zero problems and the entry reuses cleanly. With these in place,
flipping org.gradle.unsafe.isolated-projects drops from 356 problems to a single
remaining AGP-internal access in com.android.application, which is upstream and
will clear with a future AGP that fully supports Isolated Projects. The IP flag
stays off until then.
@bmc08gt bmc08gt self-assigned this Jun 24, 2026
@bmc08gt bmc08gt merged commit ad682e5 into code-payments:code/cash Jun 24, 2026
0 of 3 checks passed
@bmc08gt bmc08gt deleted the build/config-cache-enabled branch June 24, 2026 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant