Skip to content
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

Fix #372. Synchronize access to rootProject.configurations to get around #372 #386

Merged
merged 2 commits into from
Mar 28, 2019
Merged

Conversation

staffanf
Copy link

…that rootProject.configurations.classpath is created in a non thread-safe way

Staffan Forsell added 2 commits March 28, 2019 13:37
…that rootProject.configurations.classpath is created in a non thread-safe way
@uklance
Copy link

uklance commented Mar 28, 2019

Interesting as you are only synchronising the "getter" logic. You are doing the mutation outside of the synchronized block

This seems to prove my theory that there's a bug in Gradle when resolving the root project's buildscript in a parallel build

@staffanf
Copy link
Author

Yes, I would say here

The question is if it's the usage that's wrong or if the access should be thread-safe in gradle in the first place. That was kinda why I posted on the gradle forums hoping for some dev to notice.

@nedtwigg nedtwigg merged commit c23c9c7 into diffplug:master Mar 28, 2019
@nedtwigg
Copy link
Member

Interesting! Perhaps this PR and the issue it resolves will be helpful to the gradle folks. Thanks for your persistence and skeptical approach to a very tricky problem @staffanf and @uklance. Regardless of it gets fixed, we should merge this and keep it merged because it's nice to work with as many gradle versions as possible.

@nedtwigg
Copy link
Member

Published in x.21.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants