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

Re: COMMITTED supported?

From: Benjamin Pflugmann <benjamin-svn-usr_at_pflugmann.de>
Date: 2003-08-24 19:21:59 CEST

On Sun 2003-08-24 at 07:40:02 -0700, you wrote
> >Dmitri Priimak <priimak@stanford.edu> writes:
> >>Keyword does not seem to be supported you as of version 0.27
> >>
> >>svn diff -r COMMITTED myfile.c
> >>svn: Incorrect parameters given
> >>svn: Sorry, svn_client_diff was called in a way that is not yet supported.
> >>svn: do_diff: COMMITTED nomenclature not supported
> >>
> >>Will it be supported in 0.28?

Nope, quite certainly not...

> I guess I misunderstood how it works. What I am trying to accomplish is.
> Let say I want to see diff of the last commit vs. commit before the last
> one of file so I say 'svn diff -r PREV:COMMITTED myfile.c' I understand
> that it suppose to do the same as 'svn diff -r PREV:HEAD myfile.c' or
> just plain 'svn diff -r PREV myfile.c'. If I don't have my WC then I
> should use PREV:HEAD with URL to a file or a part of repository.

...but why is a fix in 0.28 important when there are easy

> Anyway. PREV:COMMITTED should work or not? And what are those
> supported functions with COMMITTED?

I don't know, but simply read the error message again:

  svn: Sorry, svn_client_diff was called in a way that is not *yet* supported.
  svn: do_diff: COMMITTED nomenclature not supported
  (*emphasis* mine)

I understand that means, someone made an explicit check for COMMITTED
and made svn it print this message in that case. If the developer
thought it to be an unreasonable argument, he would probably have
chosen a different error, not one suggesting that it might/will be
supported later.

Well, let's see... the check was part of the following commit

rev 6657: cmpilato | 2003-08-07 02:28:22 +0200 (Thu, 07 Aug 2003) | 14 lines
Re-org the guts behind svn_client_diff() for easier readability and,
in theory, expanded support. This is somehow in conjunction with
issue #1142 - svn diff cannot compare a wc file vs a revision in
another branch. It passes 'make check' ... miraculously.
* subversion/libsvn_client/diff.c
  (unsupported_diff_error): Was polite_error(). Also, remove 'pool'
  (diff_wc_wc, diff_repos_wc, diff_repos_repos): New, though
    esseeeeentially cored out of do_diff().
  (do_diff): Core the ugliness out of this function, and make it
    effectively just a setup routine that runs one of three other
    functions based on the type of diff we need to perform.

But there was already a comment beforehand, which said that
URL@committed would fail (nothing about WC, though).

It looks like support for COMMITTED is not hard to do, but I do not
really now much about that code. Not sure, why cmpilato decided to
prevent COMMITTED from used at all resp. why there seems to be no
issue to fix that behaviour at a later time. That would best be
answered by himself, I guess.



To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Aug 25 16:58:32 2003

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