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

Re: [PATCH] fix for svndumpfilter not filtering out revisions that were initially empty

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: Wed, 07 Jul 2010 20:25:13 -0400

On 07/04/2010 12:08 PM, Igor Sereda wrote:
> [[[
> Fix for svndumpfilter.
> * subversion/svndumpfilter/main.c
> Problem Reproduction Sequence:
> 1. Get a dump of a repository with empty revisions (for example, by
> pulling a subdirectory of a remote repo with svnsync).
> 2. Run svndumpfilter --drop-empty-revs to filter the dump.
> Expected:
> Revisions that were initially empty are dropped. (As well as those
> filtered out.)
> Observed:
> Only revisions that were filtered out are dropped. Revisions that
> were initially empty - remain.

I like the idea of this change, but I wonder if it can be made without
introducing a new command-line option. Your "expectations" as listed above
certainly make sense. That is, until you actually read the built-in
documentation found in the program's usage message. :-)

The --drop-empty-revs option has always been documented as doing exactly
what it does today -- only dropping revs that were made empty by the
filtering process:

   $ svndumpfilter help include
   include: Filter out nodes without given prefixes from dumpstream.
   usage: svndumpfilter include PATH_PREFIX...

   Valid options:
     --drop-empty-revs : Remove revisions emptied by filtering.

To change that behavior now could arguably be considered a violation of our
compatibility promises.

What do others think?

> The following patch fixes that.

(In case it wasn't clear, my lack of comments about the patch don't
constitute silent assent. I've not yet reviewed the details of the change
for accuracy.)

C. Michael Pilato <cmpilato_at_collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

Received on 2010-07-08 02:26:18 CEST

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