[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [patch #4573] Fix for keyword expansion problem/mis-feature during c

From: Arthur Barrett
Subject: RE: [patch #4573] Fix for keyword expansion problem/mis-feature during commit
Date: Tue, 14 Feb 2006 13:50:21 +1100

Rahul and Patrick,

Thanks for submitting the patch.  Our development manager has had a look
at it and found that it is unsuitable for inclusion in CVSNT, however a
simpler solution has been found and provided it does not break something
else then it should be included in CVSNT 2.5.04.

I was surprised when I saw your e-mail last week, because in all the
years that CVS has been in existence nobody to my knowledge has
complained that modifying generated keywords stored those modifications
in the RCS file.  I suppose that for many CVS users it's just not
something that would make sense to do... and even if they did the
modifications can be retrieved using -ko anyway so there's no issue with
them being lost.

I personally like to encourage contributions of code to CVSNT as much as
I can - however asking about a problem before beginning to work on the
code to "solve" it is probably the wisest course of action.

In particular your original patch was not suitable for inclusion in
CVSNT (or probably for cvs 1.12) as it has a hardcoded list of keywords,
which neither CVS nor CVSNT use.  The solution you provided was also
considered to be overcomplex - a much simpler algorithm could be used
very easily by patching the RCS compare routines themselves... all
keywords for example exist on a single line ($Log$ is a special case but
wouldn't be handled by this version either)... In our opinion you could
simply pair a strcmp with a call to expand_keywords and it'd work very
simply, without introducing new untested algorithms into the stable

As for subversion being an alternative for commercial software
development, there was a recent thread on that subject ("Missing CVS
Windows Client") that I advise you read carefully since it referenced
cases of repository corruption in SVN with both the file and database
backends.  The CVSNT project endeavours to deliver open source
versioning tools that facilitates good CM process.  Hence ACL's, Audit,
Mergepoints (Merge Tracking), True Rename (not copy+delete), Unicode
filenames, Unicode Merge etc. None of those features are yet to make it
into SVN:

If you are interested in contacting the CVSNT project then please
contact the newsgroup:

Please read this FAQ before submitting a support request:


Arthur Barrett

-----Original Message-----
From: info-cvs-bounces+arthur.barrett=march-hare.com@nongnu.org
[mailto:info-cvs-bounces+arthur.barrett=march-hare.com@nongnu.org] On
Behalf Of Rahul Bhargava
Sent: 11 February 2006 11:41
To: Patrick Richardson
Cc: bug-cvs@nongnu.org; Info-cvs@nongnu.org
Subject: Re: [patch #4573] Fix for keyword expansion problem/mis-feature
during commit

Sorry to hear that Patrick. Indeed, Subversion implements the same
behavior as the proposed patch.  Subversion allows keywords properties
to be specified to a file. Changes to keyword data are not even
transmitted to server as the local sandbox maintains a copy which is
diff'd against for spurious changes (keywords).  Merging and updates
also do 
not generate
conflicts with keywords in Subversion. The kwdiff algorithm we had 
submitted in the patch can
enable all these features that Subversion supports. Its a pity that the 
patch was rejected
by CVS maintainers. The algorithm defined in the patch could have been 
also used to
reduce the footprint of a CVS server process when doing RCS 
diff/compare, that was also
not considered useful.

We have made the patch public, it can be downloaded from -

I am also cc'ing info-cvs mailing list, so that other CVS users wanting 
Subversion like behavior could
use/modify the patch.

Patrick Richardson wrote:
> Follow-up Comment #17, patch #4573 (project cvs):
> It is really unfortunate that this bug will not be fixed. There has 
> been no response to the case I made two and a half months ago FOR 
> fixing the bug. It absolutely blows my mind that the CVS maintainers 
> will not even consider implementing this patch as a non-default 
> option.
> Since it looks like the CVS maintainers will never fix this problem, I

> had to recommend to my company that other alternatives should be 
> evaluated, and if a suitable alternative is found, we should switch. 
> After a careful evaluation of several open-source and commercial 
> alternatives, we have decided to switch to Subversion.
> Yes - the Subversion team got it right. Keyword expansion is 
> Subversion works as CVS would IF the proposed patch were incorporated.
>     _______________________________________________________

Rahul Bhargava,
SCM Solutions
Pleasanton, CA

reply via email to

[Prev in Thread] Current Thread [Next in Thread]