Hello,
 
I just noticed that fileset containting pattern like this "foo*/xxx" are considered recursive and therefore DirectoryScanner scans whole directory structure. That is not (completely) true - those patterns could not contain files in other depth than 1.
 
I'd like to come with some optimalization to speed up this case. I tried to add another condition into "Only include the valid patterns for this path" part of DirectoryScanner, which would do some partial-regexp-match to see, if any deeper object could potentially satisfy that pattern. if not - its not neccessary to scan deeper.
 
e.g.
<fileset id="buildfiles" basedir="c:\test\foo" defaultexcludes="false">
   <include name="Gordic*/*.csproj"/>
</fileset>
c:\test\foo\etc should be discarded when scanned and not dip into, since none file/folder in it could ever satisfy any pattern.
c:\test\foo\Gordic1 shouldn't be discarded and scanned normaly as today.
c:\test\foo\Gordic1\_svn shouldn't be discarded as well
 
What do you think about this optimalization? Any idea how to (easily) perform it?
 
Martin
 

Reply via email to