On Sun, Nov 04, 2001 at 09:40:27AM +0100, Sander Striker wrote:
> > From: Kevin Pilch-Bisson [mailto:kevin@pilch-bisson.net]
[SNIP]
> > Note that the code is already there for svn st -u. Also note
> > that someone,
> > can't remember exactly who, said they wanted to work on svn st, so that it
> > show results as they came back from the server, instead of
> > waiting until all
> > them were done.
>
> IIRC that was Peter Radics who said this on irc.
>
> > So maybe hold off on this for a while, but keep
> > in mind that
> > a little refactoring is all that is really needed.
>
> Sander
Yes, it was me :)
My original problem was "svn st -n" not showing directory entries, only
file entries.
Yoshiki pointed out the WebDAV Depth concept earlier, and I believe that
is the correct solution to all the problems with recursive behaviour
(cvs doesn't have this problem, 'cos it doesn't version directories).
My idea was to use '-N' '-n' and '-r' for Depth={0,1,infinite}
respectively, with a meaningful default Depth for each subcommand.
I thought I'd write up a quick patch to fix the status issue like this,
but then I also noticed that the current code collects all status
information before spits out anything. That's not very nice, especially
with --update.
So now I came to a conclusion that I should use one the crawlers/editors
to do the status stuff, so I started looking at the existing code, and
found out that all of the current subcommands only think of a boolean
recursion flag, with every "crawler" implementing this recursion thing
almost, but not completely differently from the other :)
In my opinion, replacing that "svn_boolean_t recurse" (or "descend",
etc) with "enum svn_depth_t depth" is the Right Way to handle this
problem, and I also have this feeling that we can do away with some of
our current crawlers, 'cos a single generic crawler with this depth
concept could do all the work for all our editors.
So, the status quo: I started out on a quick fix for "svn st", and ended
up on a quest to rewamp _all_ of the subcommands.
This quest is a necessary one on the long run, in my opinion, but it'll
take a lot more than I first estimated for the status patch.
In other words: feel free to hack away with "svn status" right now, I
won't touch it in a while :[
cheers,
mitch
ps: please shout now if you think this whole depth idea is bogus, 'cos I
still intend to do this rewrite eventually, if The Board approves :)
--
// Radics Peter <mitch_at_lbcons.net> (http://lbcons.net)
//
// "If human beings don't keep exercising their lips,
// their brains start working." -- Ford Prefect
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:47 2006