Matthew Mastracci wrote:
...
The fileset directory scanning logic in NAnt is somewhat unintelligent
as to how deep it goes. We made this tradeoff in the past so that we
can better combine multiple recursive filesets without a major
performance hit. For instance, NAnt's filescanner is just as fast to
scan "**/*.xml" as it is to scan both "**/*.xml" and "**/*.java".
Cygwin's globbing has a much easier task - it only needs to evaluate
each path segment wildcard once. :)
Internally, we have a flag "isRecursive" that we set on patterns that
reflects whether the pattern potentially matches more than a single
directory:
Without studying the code to figure out the intent of the recursive
flag, my gut intuition is that only the ** implies recursion. That is,
given a pattern
**/foo/bar*
you have to check every folder in the tree to see if it has a match for
the foo/bar* pattern. In other words, the foo/bar* must be applied at
various levels in the tree. But why should
*/foo/bar*
be considered recursive?
Gary
PS The tests should be there, anyway. One of the important points of
agile methodologies is that a comprehensive test suite makes it much
cheaper to fix design problems.
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Nant-users mailing list
Nant-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users