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

Re: Can we remove DAV-props/WC-props from the code now?

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: Thu, 31 Jan 2013 14:30:53 -0500

On 01/31/2013 02:11 PM, Greg Stein wrote:
> For API compatibility purposes... no, they cannot be removed.
>
> We renamed them to "dav_cache", but the original APIs called them "WC
> props" and never stated they might disappear.
>
> Unless you can find something that says they will disappear (as Mike
> noted, a switch will invalidate them), then an API user is going to
> expect to get/set those properties just like any others.

Strictly speaking, a switch will only invalidate WC props if the RA layer's
invalidate_wc_props() RA callback is hook up to the
svn_wc__node_clear_dav_cache_recursive() function (or its pre-WC-NG
manifestations). So, while the docs in svn_props.h do state:

/** WC props are props that are invisible to users: they're generated
 * by an RA layer, and stored in secret parts of .svn/.

...it does seem that we effectively we handed WC API users a generic way to
store and retrieve properties for whatever purpose they saw fit. I suppose
it would be a capability breakage to take that functionality away.

> And yes, the RA code has always been able to work without them. As
> Ivan notes, we cache a URL for each resource to avoid a PROPFIND at
> commit time. A long time ago, we stored a second WC prop, but I forget
> what it was.

Yup -- the activity URL.

-- 
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet   <>   www.collab.net   <>   Enterprise Cloud Development

Received on 2013-01-31 20:31:28 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.