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

RE: svn info --detail [was: Time to branch 1.9]

From: Bert Huijben <bert_at_qqmail.nl>
Date: Tue, 17 Feb 2015 12:40:59 +0100

> -----Original Message-----
> From: Branko Čibej [mailto:brane_at_wandisco.com]
> Sent: dinsdag 17 februari 2015 10:51
> To: dev_at_subversion.apache.org
> Subject: Re: svn info --detail [was: Time to branch 1.9]
>
> On 17.02.2015 10:29, Julian Foad wrote:
> > Ben Reser wrote:
> >> On 2/16/15 3:57 AM, Branko Čibej wrote:
> >>> At first I thought I'd just lowercase the untranslated keys that 'svn
> >>> info' displays, replacing spaces with dashes. But there's a strong case
> >>> for using the same names as the --xml output; not because it's easier to
> >>> implement, but because it's at least marginally consistent with
> >>> something we already have.
> >> The XML names are pretty bad in my opinion. These are the two blocks out
> of
> >> the XML output that have the current revision and the last changed revision
> >> respectively:
> > I don't necessarily disagree with your conclusion, but want to correct the
> facts.
> >
> >> [[[
> >> <entry
> >> kind="file"
> >> path="install.sh"
> >> revision="148">
> >> <commit
> >> revision="35">
> > ... </commit>
> > ... </entry>
> >
> >> ]]]
> >>
> >> I think command line users are going to find the distinction between
> >> "entry-revision" and "commit-revision" to be obscure.
> > In our XML output, the <entry> element is the wrapper for the whole of the
> info for one target, and is thus redundant in these specifications. These two
> would be "revision" and "commit-revision".
> >
> >> Entry is leakage from our WC data model leaking into the XML output,
> where it
> >> really doesn't belong.
> > I don't think it is: rather, it is just saying in the most general sense that this is
> one entry in a list. Compare the other XML outputs (most easily seen by
> examining subversion/svn/schema/*.rnc) where "entry" is used for the element
> of various kinds of lists -- lines of blame, targets of status, etc.
> >
> >> The XML values taken literally would also be way more verbose than
> necessary.
> >> "entry-path" versus just "path".
> > This one would be just "path".
> >
> >> For that matter are you going to keep some of the parent blocks like "wc-
> info"
> >> which would make things like "schedule" into "wc-info-schedule"
> >>
> >> The repository root key would end up being "entry-repository-root" if you
> kept
> >> the nesting as well.
> > Just "repository-root".
> >
> >> So in my opinion just using the untranslated info keys with spaces turned into
> >> "-" is far better.
> >>
> >> You're almost certainly going to end up making arbitrary decisions anyway
> since
> >> some of the names start getting silly.
>
> For now, I'd only expose the attributes of <entry> and <commit> and the
> elements within <commit> and <repository>, along with the URLs. The
> definitive list is:
>
> revision
> kind
> url
> relative-url
> repository-root
> repository-uuid
> commit-revision
> commit-author
> commit-date
>
> I wouldn't expose entry's 'path' attribute because it doesn't make much
> sense; in the WC case, it's already known and in the URL case, it's
> always the basename, which is also known. I'd also leave wc-info,
> conflicts etc. out for now.
>
>
> All that said: Johan makes a good point about using keywords that are
> more likely to be familiar to users; the XML-based ones are far from that.

I paint my shed in the 'last-revision', 'last-author' and 'last-date' color...
(Following Johan's suggestion and all recent code in libsvn_wc)

        Bert
Received on 2015-02-17 12:41:35 CET

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