Todd Denniston writes:
>
> with (CVS) 1.9 (client/server) ---as shipped with slackware 3.2
> "cvs diff -ybw" would give me the familiar side by side diff I want but with
> (CVS) 1.10.8 (client/server) --- compiled by me on slack 7.0 with
> ./configure;make;make install
> "cvs diff -ybw" only gives
> diff: invalid option -- y
> Usage: cvs diff.....
>
> looking at cvs-1.10.8/diff/diff.c it looks as though the y should be processed if
> the option ever made it there, but by putting a printf in the y case I know it
> never does.
The following comment in src/diff.c tells the story:
/* CVS 1.9 and similar versions seemed to have pretty weird handling
of -y and -T. In the cases where it called rcsdiff,
they would have the meanings mentioned below. In the cases where it
called diff, they would have the meanings mentioned in "longopts".
Noone seems to have missed them, so I think the right thing to do is
just to remove the options altogether (which I have done).
In the case of -z and -q, "cvs diff" did not accept them even back
when we called rcsdiff (at least, it hasn't accepted them
recently).
In comparing rcsdiff to the new CVS implementation, I noticed that
the following rcsdiff flags are not handled by CVS diff:
-y: perform diff even when the requested revisions are the
same revision number
-q: run quietly
-T: preserve modification time on the RCS file
-z: specify timezone for use in file labels
I think these are not really relevant. -y is undocumented even in
RCS 5.7, and seems like a minor change at best. According to RCS
documentation, -T only applies when a RCS file has been modified
because of lock changes; doesn't CVS sidestep RCS's entire lock
structure? -z seems to be unsupported by CVS diff, and has a
different meaning as a global option anyway. (Adding it could be
a feature, but if it is left out for now, it should not break
anything.) For the purposes of producing output, CVS diff appears
mostly to ignore -q. Maybe this should be fixed, but I think it's
a larger issue than the changes included here. */
> or maybe if I can find time to do it where to start on a fix, BIG maybe?
I'd start by comparing the options lists in src/diff.c, diff/diff.c, and
the rcsdiff man page. And if you do decide to do it, please change the
diff_usage message (in src/diff.c) to document all of the options rather
than deferring to "rcsdiff-options". (And, although I haven't looked, I
suspect a similar change ought to be made to the Cederqvist manual.)
-Larry Jones
Pitiful. Just pitiful. -- Calvin