[
https://issues.apache.org/jira/browse/IVY-628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12546907
]
Xavier Hanin commented on IVY-628:
----------------------------------
I've implemented a first version of this improvement, which seems to work
properly, but I'm not happy with the implementation so far.
The two parts of the cache are now:
- a repository cache, where Ivy caches data collected from dependency resolver,
such as the downloaded artifacts and module descriptor, and meta information
such as the artifact origin and resolver name
- a dependency resolution cache, where Ivy puts files with the result of a
resolution process
I've created two interfaces corresponding to each kind of Cache, and tried to
use these interfaces as often as possible. The main area where the two kind are
needed together is for the resolve itself.
By default the two locations are still in the defaultCache, but one can use
ivy.cache.repository and ivy.cache.resolution to choose a different root
(relative to the base cache directory).
What I still don't like is how responsibilities are shared between cache and
settings, and that a base cache directory can be defined almost in all tasks
(see my e-mail on ivy-dev on this subject). I would really like to make
CacheManager a first level citizen in Ivy realm, and configure cache per
resolver (see IVY-399) or globally per settings, but outside the settings
element, and rather in a cache element.
Thus I don't mark this issue as resolved yet, waiting for feedback about this
kind of thing (and especially to remove base cache definition from everywhere
but the settings).
> split the cache into an downloaded artifacts cache and a metadata cache
> -----------------------------------------------------------------------
>
> Key: IVY-628
> URL: https://issues.apache.org/jira/browse/IVY-628
> Project: Ivy
> Issue Type: Improvement
> Components: Core
> Reporter: Maarten Coene
> Assignee: Xavier Hanin
> Fix For: 2.0
>
>
> At the moment, the cache contains two types of data:
> - downloaded artifacts (jars and ivy files)
> - metadata files containing resolve results
> It would be good if we could specify different cache locations for each type.
> We could also for instance make these locations configurable with the
> following properties:
> ivy.cache.artifacts
> ivy.cache.metadata
> The default for both properties could be the current Ivy cache directory.
> Maarten
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.