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

Re: mergeinfo terminology

From: David Glasser <glasser_at_davidglasser.net>
Date: 2007-12-20 19:57:09 CET

On Dec 18, 2007 6:48 PM, Paul Burba <pburba@collab.net> wrote:
> > -----Original Message-----
> > From: dglasser@gmail.com [mailto:dglasser@gmail.com] On
> > Behalf Of David Glasser
> > Sent: Tuesday, December 18, 2007 1:29 PM
> > To: dev
> > Subject: mergeinfo terminology
> >
> > Writing code that uses mergeinfo is very confusing. This is
> > because there are several types floating around that
> > represent mergeinfo:
> >
> > (a) a string representation of a single target's mergeinfo
> > (as svn_string_t *)
> >
> > (b) a hash representation of a single target's mergeinfo (as a hash
> > mapping (const char *) to array of (svn_merge_range_t *)
> >
> > (c) a hash mapping target paths (const char *) to (a)
>
> I know we use (a) in svn_client__merge_path_t, but where do we use (c)?

I think there was some random API that did, maybe
svn_fs_get_mergeinfo_for_tree or the RA version. I found it
surprising. I'm not convinced we should ever really have it, except
perhaps as an intermediate inside functions that are doing
serialization.

> > (d) a hash mapping target paths (const char *) to (b)
> >
> > I think at the very least we need to come up with consistent
> > terminology for referring to these things. I suggest:
> >
> > (a) "unparsed mergeinfo"
> >
> > (b) "mergeinfo" (or "parsed mergeinfo" to be explicit)
> >
> > (c) "unparsed mergeinfo catalog" (but we perhaps should avoid this
> > type in general)
> >
> > (d) "mergeinfo catalog"
> >
> > Additionally, I think we should consider making typedefs for
> > (b) and (d):
> >
> > typedef apr_hash_t *svn_mergeinfo_t;
> > typedef apr_hash_t *svn_mergeinfo_catalog_t;
>
> No bikeshedding from me, that all sounds perfectly reasonable.

If there are no objections, I may start making this terminology change
today on trunk.

--dave

-- 
David Glasser | glasser_at_davidglasser.net | http://www.davidglasser.net/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Dec 20 20:00:07 2007

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.