-
Notifications
You must be signed in to change notification settings - Fork 460
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support Gradle configuration cache on multiple JVMs #1274
Comments
FYI Gradle 8 will do a full roundtrip on the first invocation with CC enabled. |
Full roundtrip will work great on the same JVM, so Spotless will still work and not work under the same conditions it does currently. EDIT: Compatibility with configuration cache within a single JVM on Gradle 8 is confirmed. |
I checked For |
Thanks mostly to @Goooler's tireless dedication, we have finally shipped:
These contain a bazillion fixes. Please test and let us know if you encounter any issues! |
JUnit build updated ✅ |
All working fine for me as well, except I used removeUnusedImports("cleanthat-javaparser-unnecessaryimport") as seen in the docs. That one seems to not support the config cache yet:
I just removed it as it looks like |
I get a similar error to @bddckr if I use any
or:
I've worked around it by declaring Spotless incompatible with the configuration cache, like: tasks.withType<SpotlessTask>().configureEach {
notCompatibleWithConfigurationCache(
"Spotless 7.0.0.BETA1 with prettier steps does not support the configuration cache.")
} |
FWIW, I've upgraded to 7.0.0.BETA2 in all my repositories and everything seems to be in order! Great job! |
With |
Just filed a regression on #2318 |
Gradle configuration cache requires task state to be round-trip serializable. As outlined at #987, this is a signficant constraint on plugin developers and it slows down the end-user experience of change-test-change-test on a single JVM daemon. We built a workaround (
JvmLocalCache
) that complies with Gradle's requirement by making our tasks round-trip serializable without requiring much work from plugin developers or the end user's machine, but it only works within a single JVM.To work on multiple JVMs, we need to
JvmLocalCache
The text was updated successfully, but these errors were encountered: