The :configuration-cache-report project produces the Javascript / HTML
app for browsing and understanding problems occurred when running a
build with configuration caching.
The output of :configuration-cache-report is completely produced by the
assembleReport task into build/report which then gets published to repo.grdev.net.
It's consumed by gradle/gradle's configuration-cache module.
The interface between :configuration-cache and
:configuration-cache-report is a Javascript global function named
configurationCacheProblems which must be defined in a file named
configuration-cache-report-data.js. The file is generated by the
:configuration-cache module from the data collected at configuration
time.
An example file is kept for documentation and testing purposes.
The app itself is built according to the Elm architecture.
Start a build on one shell:
$ ./gradlew stageDevReport
Start browser-sync (https://browsersync.io/) on another:
$ browser-sync start -s build/stageDevReport --startPath configuration-cache-report.html -w
Then make some changes and start the build again:
$ ./gradlew stageDevReport
Hack away!
To quickly make and verify changes for gradle/gradle build, you can run (this assumes you have cloned configuration-cache-report in the same directory as gradle):
./gradlew <TheTaskToBeRunInGradleBuild> --include-build ../configuration-cache-report -Dorg.gradle.dependency.verification=lenient