[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r1846237 - /subversion/trunk/subversion/tests/cmdline/pegrev_parse_tests.py

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Sat, 10 Nov 2018 00:31:53 +0000

Branko Čibej wrote on Fri, 09 Nov 2018 12:56 +0100:
> On 09.11.2018 12:54, brane_at_apache.org wrote:
> > Author: brane
> > Date: Fri Nov 9 11:54:21 2018
> > New Revision: 1846237
> >
> > URL: http://svn.apache.org/viewvc?rev=1846237&view=rev
> > Log:
> > More tests for peg revision parsing.
> [...]
> > +@Wimp("Removes E instead of reporting ENOENT or E125001 for E/@")
> > +def remove_subdir_7a_no_escape_peg(sbox):
> > + "remove missing 'E/@' without pegrev escape"
> > + do_remove(sbox, 'E/@', 'E/@') #, "svn: E125001: 'E/@'")
>
> Yes indeed ... our target parsing is so incredibly reliable that
> attempting to delete a non-existent 'E/@' will happily delete 'E' with
> all its contents. I think this may be too much of a good thing.

The documented escaping rule for CLI consumers is to append an "@" after
every filename. By this rule, a CLI consumer that _wants_ to remove E/
would run "svn rm E/@". That command should parse as { target = 'E/',
peg = '' } regardless of whether the directory "E" contains a child
named "@".

I don't understand what change you're proposing.
Received on 2018-11-10 01:32:09 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.