gnu-arch-users
[Top][All Lists]
Advanced

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

[Gnu-arch-users] cscvs - a couple of bugs


From: Robert Collins
Subject: [Gnu-arch-users] cscvs - a couple of bugs
Date: Sun, 21 Mar 2004 02:42:46 +1100

Well, trust CVS to make life interesting.

Charles, I've merged your latest changes into my branch, but I thought
you should know of a couple of unpleasant situations in CVS I've found.

One is that the heuristic in the Parser to skip a revision if the 
----
revision xyz

marker is preceeded by a blank line - this is tripped up by log entries
with a trailing blank line. Which I've found in a CVS repository now.
I've added debug to note this to the parser, and made the test break
rather than passing - do you know which repository it was needed for?
See my patch for my thoughts on the long term.

Secondly, and more seriously, the changeset identification algorithm is
broken. The date based sort is (unfortunately) flawed - and this is only
visible in my branch. Your branch, which uses the tree-lint -t magic to
add files will appear to work, but will actually generate incorrect
changesets - for instance placing a change some hundreds of revisions
after 1.1.1 as changeset 1 in cscvs. Mine will bork on commit, as the
files are not added (due to them being a change, not a new-on-branch).

I think we can work around this by the following minor tweak:
have a dictionary per branch, indexed by file name, containing the
revision number expected. 

If the revision number of a file in the current changeset is less than
the expected revision number, defer that changeset and process the next
one. Thoughts?

Rob

-- 
GPG key available at: <http://www.robertcollins.net/keys.txt>.

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

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