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

Re: svn commit: r1195948 - in /subversion/branches/showing-merge-info/subversion: include/private/svn_client_private.h include/svn_client.h libsvn_client/url.c

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Tue, 1 Nov 2011 15:58:11 +0000 (GMT)

Greg Stein wrote:
> Is a new datatype really needed? You've got two members, and one
> of those already has pretty sketchy multi-variant semantics.

A tuple of (path_or_url, peg_revision) is currently used throughout the libsvn_client API as the main way to specify what versioned thing to operate on. Having its (sketchy) semantics documented in one place, and having the two pieces of the tuple kept together, is very useful.

As with the whole branch this is experimental. You'll have noticed I had defined and started using a "svn_client_target_t" in this branch, holding this info plus an operative revision plus the resolved location (repo, rev, relpath). It was an earlier attempt at this sort of thing, but I've now realized that was trying to do too much all together. Hence I'm trying a simpler thing.

- Julian

> On Nov 1, 2011 8:12 AM, <julianfoad_at_apache.org> wrote:
> > On the 'showing-merge-info' branch: Introduce a 'pegged
> > location' data type in the libsvn_client API.
[...]
> > +/** A "peg" is the location of a versioned node in a repository or in a
> > + * working copy, as specified by the client to libsvn_client.
> > + *
> > + * If @a path_or_url is a URL then @a peg_revision specifies the
> > + * revision at which the URL is to be looked up, and the peg revision
> > + * kinds 'base', 'committed' and 'prev' are invalid.
> > + *
> > + * Otherwise, @a path_or_url is a working copy path.
> > + *
> > + * @note About the meaning of a "peg revision" with a working copy path.
[...]
> > + */
> > +typedef struct svn_client_peg_t
> > +{
> > +  const char *path_or_url;
> > +  svn_opt_revision_t peg_revision;
> > +} svn_client_peg_t;
Received on 2011-11-01 16:58:48 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.