On Thu, May 4, 2017 at 10:16 AM, Daniel Shahaf <d...@daniel.shahaf.name> wrote: > Doug Robinson wrote on Wed, May 03, 2017 at 15:54:50 -0400: ... >> Not seeing it - at least not yet. In Perl the RE needed to handle >> this would be one of the duals, e.g. "/trunk/iota(|/.*)" - the >> either/or with nothing on the left and "/.*" on the right. It really >> is a dual case. I know of no better syntax. Since we're working on >> this as a wildcard I don't see an alternative. > > Off the top of my head, we could have [/trunk/iota/***] and > [/trunk/iota/**] with different meanings (the former applies to > a /trunk/iota file, the latter doesn't). Does anyone else (besides Doug > and I) have ideas here?
Hmm, /*** doesn't look like something I'd remember easily, if I wanted to use that feature as an svn admin. I have only followed this discussion from a distance. If I understand correctly the remaining point is whether or not /iota/** would match with the file /iota or not. Speaking purely from my own intuition, I would say "no". I feel this pattern is intended to apply to the _subtree_ below iota, including iota itself (which is thus implied to be a directory, because we're talking about subtrees). In practice I think the admin configuring this rule will know whether iota is ever intended to be a file or a directory. A rule like that to me always implies that "the guy who configured it" expects iota to be a directory (why else would he put a "subtree rule" for it). TBH, I also don't really see the use case of "I want this rule to apply to the _namespace_ iota, i.e. to the file iota (if it's a file) and to directory iota and its subtree (if it's a directory)". In context, you always know whether it's meant to be a file or a directory. Maybe we should just follow what most other implementations do? I've done a quick check in Atlassian FishEye / Crucible (searching for files). There /iota/** does not match file /iota (but it does match directory /iota). -- Johan