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

        

Reply via email to