"Kuiper, Arnout" wrote:
> From: Bill Petheram [mailto:petheram@acm.org]
> > > The main problem with this approach is that it only allows
> > > recursion on the end of the pattern, not on the beginning,
> > > which is essential for a number of situations Ant has to
> > > deal with, like filtering out CVS directories, filtering
> > > out test directories, etc.
> >
> > Normally to exclude CVS directories you would use an exclude pattern.
> > I.E don't match any path that contains this pattern.
>
> Of course it is an exclusion pattern that does the filtering,
> but that pattern must match any CVS directory on the end of a path.
> Therefore you need "recursion" at the beginning, which cannot be
> supplied by any other method that has been proposed.
You are using a special syntax inside path specifications. In my view you
should have path specification conforming to shell syntax then apply a set
of regular expressions to each found lement from the path syntax.
>
>
> > But it is different from anything else.
>
> Because the other approaches don't give that little bit extra...
> Should we refrain from using something more powerful, just because
> it's new and a bit different?
Maybe you haven't looked at ther approaches properly. tar, find work OK.
>
> > I think you are confusing two issues. One is pattern matching and the
> > other is specifying paths.
> > Your proposal does both. Whereas they can be separated.
>
> I doubt that, I don't think you understand the power of this matching
> concept. You match on complete paths instead of just filenames. This can
> only be done if your path is part of the pattern. Therefore
> you cannot separate paths from patterns. If you can convince me
> otherwise, please do.
>
What about path=test recurse=true ignore="\/CVS\/","~$","tmp$"
>
> > I say again at the cost of users having to do something new and
> > different and unlikely to be used by any other package.
>
> Who says it won't be picked up by other packages, once they understand
> the power. It has to start somewhere;-)
>
Because there is not a clear separation between paths and regular
expressions.
>
> Arnout
cheers
bill
|