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

Re: svn commit: r25997 - trunk/subversion/libsvn_ra_svn

From: Vlad Georgescu <vgeorgescu_at_gmail.com>
Date: 2007-08-10 10:00:21 CEST

cmpilato@tigris.org wrote:
> Author: cmpilato
> Date: Wed Aug 8 13:56:45 2007
> New Revision: 25997
>
> Log:
> Sparse directories: Add the depth filtering wrapper editor to ra_svn,
> too. This is for issue #2842.
>
> * subversion/libsvn_ra_svn/client.c
> (ra_svn_get_reporter): Accept 'depth' and 'target' parameters. Wrap
> the provided editor with a depth-filtering editor.
> (normalize_depth_values): New helper function.
> (ra_svn_update, ra_svn_switch, ra_svn_status, ra_svn_diff): Call
> normalize_depth_values(). Update calls to ra_svn_get_reporter().
>
>
> Modified:
> trunk/subversion/libsvn_ra_svn/client.c
>
> [...]
> +/* Set *RECURSE_P and *DEPTH to sane values based on DEPTH, the depth
> + requested for an update-style editor drive operation. */
> +static void refine_recurse_and_depth(svn_boolean_t *recurse_p,
> + svn_depth_t *depth_p,
> + svn_depth_t depth)
> +{
> + if (depth == svn_depth_unknown)
> + depth = svn_depth_infinity;
> + *recurse_p = depth > svn_depth_files ? TRUE : FALSE;
> + *depth_p = depth;
> +}
> +

This change makes a couple of depth tests fail over ra_svn.
svn_depth_unknown is a valid requested depth and should not be converted
to svn_depth_unknown.

BTW, in the svn_depth_unknown case, is it even possible to filter stuff
at the RA layer? For example, if svn.collab.net were running 1.5, I
could do:

svn co --depth files http://svn.collab.net/repos/svn/trunk
cd trunk
svn up build subversion

and subsequent updates (with no explicit depth, i.e depth ==
svn_depth_unknown) would only bring in the changes to build/,
subversion/ and the top-level files. You can't do this filtering at the
RA layer because you need to now the working copy depths. (Well, I
suppose you could remember the paths and depths that were passed to
set_path/link_path, and pass them to the depth-filtering editor. That
seems complicated, though).

-- 
Vlad
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Aug 10 09:58:35 2007

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