The compileScoverageScala task depends on compileScoverageScala for all its dependencies:
https://github.com/JozoVilcek/gradle-scoverage/blame/c5870c9b924bb5c46c343c2732f65bfde37aa562/src/main/groovy/org/scoverage/ScoveragePlugin.groovy#L159
Is this necessary? The comments there say it's for the case where someone builds without compileScala tasks per the readme:
https://github.com/JozoVilcek/gradle-scoverage/blob/c5870c9b924bb5c46c343c2732f65bfde37aa562/README.md#run-without-normal-compilation
Would it be feasible for the compileScoverageScala task to only depend on other compileScoverageScala tasks when the compileScala tasks it depends on are disabled?
That way, when running tests for a subset of a project (for example, the gradle subprojects involving files that changed in a pull request), only the subprojects being tested would be compiled with instrumentation, and their dependencies would run their normal compile tasks.