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

Philip, question about svn_client_diff()

From: Karl Fogel <kfogel_at_newton.ch.collab.net>
Date: 2002-01-25 21:37:14 CET

I noticed this code, which you obviously mean to come back to:

  /* ### TODO: awful revision handling */
  if (!path_is_url
      && !SVN_IS_VALID_REVNUM(start_revision) && end_revision == 1
      && !start_date && !end_date)
    {

Of course, I immediately asked myself why we were comparing
end_revision with 1 :-). In order to understand it better, I went to
the doc string for svn_client_diff() in svn_client.h. But it doesn't
really clarify things:

   START_REVISION/START_DATE and END_REVISION/END_DATE are the two
   repository versions, for each specify either the revision of the
   date. If the two revisions are the different the two repository versions
   are compared. If the two revisions are the same the working copy is
   compared against the repository.

There's a lot of ambiguity there. I can't remember if I wrote it or
not, possibly I did :-).

Anyway, I'd like to revamp and clarify that portion, to something like
this:

   START_REVISION/START_DATE and END_REVISION/END_DATE are the two
   repository versions (a date is equivalent to whichever revision was
   current at that date). If the two revisions are different, those
   two repository versions are compared. If the two revisions are the
   same, the working file is compared against that repository
   revision. A revision of SVN_INVALID_REVNUM means the base revision
   of the working file.

Does that seem right to you? Does it fail to cover any cases?

It may or may not match the current behavior of the function. If it
doesn't, we should change the function once we decide the behavior we
want.

(Of course, we'll shortly be adding two-path support, so the
documentation will have to be adjusted again. But one thing at a
time; let's get this straightened out first.)

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:00 2006

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.