Cache the repo dependencies
---------------------------
Key: MNG-2717
URL: http://jira.codehaus.org/browse/MNG-2717
Project: Maven 2
Issue Type: Improvement
Components: Artifacts, Bootstrap & Build, Dependencies
Affects Versions: 2.0.4
Reporter: Nigel Magnay
Priority: Minor
Once projects get of a significant size, there can be a large number of
dependencies, and transitive dependencies thereof.
In our WAR projects (for example), this can approach a few hundred dependencies
(though there are a fair number of duplicates).
Looking at JProfiler (after examinining one of my own non-maven tools that also
parses POM files), the parsing cycle of reading all these POM files from the
local repo, and pull-parsing them for dependencies takes a significant
proportion of the execute time (4 of the top 10 hotspots are in MXParser.
Since non-snapshot dependencies ought never to change their dependencies [1],
and dependency download could trigger the fact that the dependencies might have
changed anyway, some kind of caching mechanism could be used to speed this up
(something like {artifact, scope} -> List{artifact}).
[1] I have reserved a particular space in hell for those people who *do* change
the deps on released POMs... ;-S
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira