DEV Community

Discussion on: Why I went back to the Gradle Groovy DSL

 
msfjarvis profile image
Harsh Shandilya

Well, once Kotlin 1.3.60 is released, it is supposed to be 3 times faster.

That's great to hear.

What you should do a Gradle Build Scan and check there is nothing wrong with your build configuration and see what metrics do you have.

I have. My configuration had no bottlenecks, Kotlin just took longer to compile than Groovy, and the build scan results for the tasks after the initial compilation of configuration files were nearly identical.

I've taken most standard measures to maximise system performance, I disabled Spectre and Meltdown mitigations on my AMD machines, I've disabled all daemons and services I don't require.

I've tried with and without Gradle build cache and the results have not changed, once configured with the Kotlin DSL, there is a noticeable if not significant degradation in build times.

Thread Thread
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

I wonder, are you using the buildSrc and modifying it frequently?

Thread Thread
 
msfjarvis profile image
Harsh Shandilya

Not using buildSrc on this particular project. Used it extensively on the Android project where I got 5 to 10 seconds of slowdowns. I don't modify it during most iterative development, only for dependency updates and version bumps where I don't use or build from an IDE.

Thread Thread
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

Ah ah, that part looks very familiar.

In this project you are using my old plugin de.fayard.buildSrcVersions

I noticed exactly the same problem as you: modifying Versioons.kt is not great because it basically forces a clean build every time.

Instead I am now working on de.fayard.refreshVersions that does the same thing, but extract the versions not in code (inside the buildSrc) but in a proper format (that can be read and written by tools) so that we don't pay the penalty price on each update.

See github.com/jmfayard/buildSrcVersio...

Thread Thread
 
msfjarvis profile image
Harsh Shandilya

Subscribed to the issue :)