Martyn J. Pearce wrote:
>
> Heh, that's an old trick from Functional Programming.
Wow, didn't know that ;-)
>>To show you the difference, here is a part of a diff between Changelogs
>>without and with the option "-l 'ILAB-1-7'":
Whoops, that was wrong, that should have read "-l '-rILAB-1-7'"
> This is great --- actual details to work with! Any chance you could send me
> the output of 'cvs log' in the directory that file's in? It'd be really
> helpful to have a test case for this.
OK, I've distilled a test case for you, attached are 4 different "cvs
log" outputs. The cvs.log file is just the output of "cvs log", the
cvs-date.log file is the output of
"cvs log -d'>2003-01-24 15:26'"
and the cvs-1-7.log file is the output of
"cvs log -rILAB-1-7"
and the cvs-both.log file is the output of
"cvs log -d'>2003-01-24 15:26' -rILAB-1-7"
And here are the results of the different runs of cvs2cl.pl on the
different files:
==================================================================
Case 1:
> cat cvs.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
This gives the complete list of all changes (as expected and correct)
==================================================================
Case 2:
> cat cvs-date.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
This gives the changes made to the files since 2003-01-24, this is also
correct.
==================================================================
Case 3:
> cat cvs-1-7.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
2003-01-28 13:52 bkuemmer
* test.txt (1.1):
Just a test (sorry, sven)
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
2002-07-08 14:23 sven
* DynaVisionShort.html (1.6, ILAB-1-7, ILAB-1-6, ILAB-1-5):
update: V1.3
This has an entry for test.txt, which does not have the ILAB-1-7 tag
because it was added to the repository aftert the tagging. This is the
kind of output which forced me to write the patch...
==================================================================
Case 4:
> cat cvs-both.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
2003-01-28 13:52 bkuemmer
* test.txt (1.1):
Just a test (sorry, sven)
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
This would be the list which we want for the testing phase of our
releases: We want all files which have been re-tagged with the ILAB-1-7
tag after the date of the initial tagging (which was 2003-01-24 15:26)
to see the "last minute" changes and bugfixes before the final release.
As in Case 3, we wouldn't want to see the test.txt file because this was
added but not tagged.
==================================================================
Case 5:
> cat cvs.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t --show-tag
ILAB-1-7
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
2002-07-08 14:23 sven
* DynaVision.html (1.16), DynaVisionShort.html (1.6, ILAB-1-7,
ILAB-1-6) (utags: ILAB-1-5):
update: V1.3
This shows the problem with the patch: The commit from 2002-08-08 shows
also files which do not have the ILAB-1-7 tag because the --show-tag
option just checks the tag on a per-commit basis.
==================================================================
Case 6:
> cat cvs-date.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
--show-tag ILAB-1-7
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
This is what I want and expect, it does not show the test.txt file, so
this is the "fixed" version of Case 4.
==================================================================
Case 7:
> cat cvs-1-7.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t --show-tag
ILAB-1-7
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
2002-07-08 14:23 sven
* DynaVisionShort.html (1.6, ILAB-1-7, ILAB-1-6, ILAB-1-5):
update: V1.3
This output is OK, it allows us to get a list of all revisions which
went into the ILAB-1-7 release (in contrast to Case 3 which shows the
spurious test.txt). So this is the "fixed" version of Case 3
==================================================================
Case 8:
> cat cvs-both.log |cvs2cl.pl --stdout --stdin --fsf -S -r -t
--show-tag ILAB-1-7
2003-01-28 13:48 bkuemmer
* DynaVision.html (1.21, ILAB-1-7):
Just a test (sorry, sven)
This is what I want and expect, it does not show the test.txt file, so
this is the "fixed" version of Case 4.
==================================================================
So, to summarize the results:
Case 6 and Case 7 are the two results I want:
If I specify a date, I get all the changed files for release ILAB-1-7
after this date, if I specify a tag, I get all the revisions which have
this tag (and not more).
Cases 3 and 4 are the "buggy" results because they show files which do
not have the tag which was specified in the "cvs log" command.
I hope this didn't get too confusing.
Cheers
Bernd
This archive was generated by hypermail 2.1.8 : Wed Jan 21 2004 - 16:25:34 GMT