[issue767] add csup to world

Simon 'corecode' Schubert corecode at fs.ei.tum.de
Sun Sep 2 05:54:16 PDT 2007

YONETANI Tomokazu wrote:
On Sat, Sep 01, 2007 at 12:57:11PM -0700, walt wrote:
Peter Avalos wrote:
On Sat, Sep 01, 2007 at 04:21:28PM +0200, Simon 'corecode' Schubert wrote:
Peter Avalos wrote:
Although I agree that this doesn't help with the server part (mainly 
used by the source mirrors), won't this help end-user clients?
But why should we add this to world?
I'm not sure.  If it's in pkgsrc, can anyone think of why we need it
in world?
The csup in pkgsrc still doesn't work properly with the version of CVS
used in DF.  IIRC Yonetani-san posted a patch many months ago.
This comes from how cvsup servers out there respond to a client when it
found an RCS keyword unknown to it (refered to as "newphrase" in rcsfile(5)).
in an RCS file.  In such a case, cvsup server tries to send a delta command
with that unknown keyword (marked as 'n' or 'N' as desribed in doc/Protocol
found in cvsup source distribution).  The server sends this special command
even if it's running in check out mode, in which clients usually doesn't care
about the changes in RCS keywords (well, at least as of cvs-1.12.13, future
versions of cvs or rcs may add a new keyword which may affect checkouts).
The current cvsup client code doesn't do anything for such commands.
The current csup implementation aborts as soon as it found a delta command
with sub commands other than 'L', 'S', or 'T'.
My patch changes csup to also accept the delta commands with 'n'/'N'
and do nothing.
Maxime seemed to consider it was a bug in cvsup server or the protocol
to send delta commands which have nothing to do with checkout mode, so
he didn't want to add a workaround for no reason.  I agree with this,
but I also care about how long it takes for cvsup mirrors around the world
to update to a newer cvsup version, especially when the problem is only
critical to csup users trying to checkout a CVS repository containing
commitid keyword.
So this patch probably should be included as pkgsrc patch then?

It disturbs me that authors keep sticking to their code, even if it is obvious that it is broken or at least inoperable.  I had the same experience with the cvsync authors, who just didn't want to fix their protocol, so that the resulting RCS files wouldn't become invalid.  Maybe I should simply write a cvs syncer myself, but then I wonder if I should invest energy in a tool that should be replaced anyways.  Regarding CVS syncers, do people think that cvsync's or cvsup's protocol design is bett

More information about the Bugs mailing list