What is an "included build", for the purpose of running tasks in parallel?


(Trejkaz (pen name)) #1

The Gradle 4.1 changelog has this:

“Included builds are now executed in parallel by default”

Our build has 30 or so sub-projects defined via include '...' lines in settings.gradle, which to me would seem to be defining “included builds”, but when I run the build, it doesn’t ever do anything in parallel.

I have 4 cores in the CPU on this computer, so I’d sort of expect 4 workers to be used.

I can only assume that the “included builds” mentioned in the changelog is a different concept entirely, so what does it actually mean?


(Sterling Greene) #2

It’s referring to composite builds, which is a way to take two or more completely separate Gradle builds (each would be an “included build”) and combine them as if they were a single multi-project build. In previous releases, Gradle didn’t build each of the included builds in parallel.

Outside of composite builds…
If you have 30 subprojects, you should see some parallelism if you run with --parallel or have org.gradle.parallel=true, unless what you’re building has very linear dependencies (project A depends on B depends on C depends on D …).


(Trejkaz (pen name)) #3

Yeah… I know there is a setting to turn it on in general, but last I checked it was still incubating, and at the moment we’re being cautious with checking out new features until they’re considered stable enough to use.