When diff'ing 1.10 to 1.10.8, I found a newly introduced BUG IN A COMMENT. The
Posix y2k fix was applied to the code in lib/getdate.y, but a new comment says
2 digits means 19xx. (See diff at the end.)
Larry Jones <[EMAIL PROTECTED]> writes:
> When reporting problems, it is imperitive that you indicate which
> version of CVS you're having trouble with.
Very sorry; you are right, of course. I was referring to the latest "official
GNU" version (on ftp.gnu.org and its mirrors), or the latest "stable" version
if you prefer that term, i.e. 1.10.
> The y2k problems were fixed
> long ago and the sort problem is fixed in the latest interim release
> (1.10.8) which you can get from www.cyclic.com.
Thanks for the information (and for fixing back then). Before reporting, I did
go through the list of bugs fixed since 1.10 and of known remaining bugs, but
my issues were not mentionend there. That is why I decided to report rather
than to download, especially as my version was marked as the latest "stable"
release.
Having downloaded now, I am happy to tell from the diff between 1.10 and 1.10.8
(and in fact from doc/RCSFILES, which I overlooked before) that the gap of
1,900 years between 99 and 2000 is meant to be there and that the bug was in
the testsuite only. For production, I will stick with the "stable" version,
which I have built for several platforms and which we have been using for quite
a while now, with no problems (except for minor ones, which I reported then):
it is excellent quality. Thanks for that too.
There seem to have been only "interim" releases since the latest "stable"
version, even if you say it has bugs that "were fixed long ago". If you do not
release later versions as stable, you will have a good reason not to do so. I
understand this as "don't use later versions for production unless you have
to", the later versions being more experimental, for volunteering testers who
can afford the risk of unstable versions and who are willing to take the risk
for a brighter future. Also, the GNU ftp site and its many mirrors hold only
"stable" versions. Please forgive reporting problems with them... ;-)
For a more constructive contribution ;-), here the buggy comment I found when
diffing 1.10 to 1.10.8. (Sorry if it should be already fixed in an unreleased
hacker version...;=)
==============================================================================
--- cvs-1.10/lib/getdate.y Thu Sep 25 19:02:09 1997
+++ cvs-1.10.8/lib/getdate.y Mon Jan 3 22:22:59 2000
@@ -619,6 +619,10 @@
}
+/* Year is either
+ * A negative number, which means to use its absolute value (why?)
+ * A number from 0 to 99, which means a year from 1900 to 1999, or
[untrue, see below]
+ * The actual year (>=100). */
static time_t
Convert(Month, Day, Year, Hours, Minutes, Seconds, Meridian, DSTmode)
time_t Month;
@@ -639,7 +643,9 @@
if (Year < 0)
Year = -Year;
- if (Year < 100)
+ if (Year < 69)
+ Year += 2000;
+ else if (Year < 100)
Year += 1900;
[looks POSIXly correct, but contradicts comment above]
DaysInMonth[1] = Year % 4 == 0 && (Year % 100 != 0 || Year % 400 == 0)
? 29 : 28;
===========================================================================
-----------------------------------------------------------------
This email is confidential and intended solely for the use of the
individual to whom it is addressed.
Any views or opinions presented are solely those of the author
and do not necessarily represent those of Thyron Limited.
If you are not the intended recipient then please be advised
that you have received this email in error and that any use,
dissemination, forwarding, printing or copying of this email
is strictly prohibited.
If you have received this email in error, please notify the
Thyron IT Administrator on +44 (0)1923 236 050 or
send an email to [EMAIL PROTECTED]
Thank You