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
Make global transforms cache versioned #12075
Comments
I think we already clean up version specific caches of older Gradle versions when the older version hasn't been used for a certain amount of time. |
As discussed with @wolfs we should probably also migrate to a different layout. Right now we have the following layout:
We could move to this:
There is no real need for the |
I've added a generic workspace allocator in this (currently draft) PR that we can eventually migrate to: #12072 |
This issue has been automatically marked as stale because it has not had recent activity. Given the limited bandwidth of the team, it will be automatically closed if no further activity occurs. If you're interested in how we try to keep the backlog in a healthy state, please read our blog post on how we refine our backlog. If you feel this is something you could contribute, please have a look at our Contributor Guide. Thank you for your contribution. |
We should do this. |
This issue has been automatically marked as stale because it has not had recent activity. Given the limited bandwidth of the team, it will be automatically closed if no further activity occurs. If you're interested in how we try to keep the backlog in a healthy state, please read our blog post on how we refine our backlog. If you feel this is something you could contribute, please have a look at our Contributor Guide. Thank you for your contribution. |
Currently the output of global artifact transforms are stored under
$GRADLE_HOME/caches/transforms-2
which is a cross-version cache location. However, the locations of the individual workspaces are bound to the Gradle version executing the related transforms. Thus there is no chance of different versions reusing content from this cache directory.To complicate matters more, the state of the workspaces is tracked via the global version-bound
executionHistory
.Therefore the cache should actually be a non-cross-version cache, and be moved under
$GRADLE_HOME/$GRADLE_VERSION/caches/transforms
(or similar).One downside of doing this is that after upgrading to a new version of Gradle the old caches won't be cleaned up anymore, which could end up wasting disk space. This is not a special case for the transforms cache, but it's a potentially large cache where the effect is perhaps more visible. We should handle this problem separately though.
cc: @gradle/build-cache
The text was updated successfully, but these errors were encountered: