On 07/29/2014 06:46 AM, Branko Čibej wrote: > If we want to > support wildcards, we /have/ to invent a different syntax for wildcard > rules. My working proposal is to add a literal '*' before the leading > slash in the path: > > [*/fspath-pattern] > [repos:*/fspath-pattern] > > because neither of these syntaxes are currently valid. We can invent a > different syntax, as long as it maintains that property; and we cannot > replace the brackets around the rule with something else, without making > very intrusive changes in the config parser code.
I like this. I would suggest using '*:' as your magic prefix, though. That way, the '*' is less likely to be mistaken for part of the match pattern itself. # Match 'private' directories withing the tags of all repositories. [*:/tags/*/private] Also, in this mode, the match pattern needn't start with '/', right? # Match any item named "public" regardless of tree depth. [repos:*:*/public] This leaves open the possibility of a future additional match mode for regular expressions (using the '^:' magic prefix) should we seek to "go there". # Match the trunk and branches subdirs and their children. [repos:^:^/(trunk|branches)(/.*|$)$] > If we decide that the config parser is fair game (since I'm already > changing it to optimize the construction of the in-memory authz > representation), we could, for example, pick > > {/fspath-pattern} > {repos:/fspath-pattern} Ugh. I'd *really* prefer not to have to reimplement basic .INI parsing for various extra-Subversion tools that read and write authz files, such as ViewVC.