Mail Archives: cygwin/2003/05/30/21:18:40
cvs has been updated to version 1.11.5-1. CVS is the 'Concurrent
Versioning System', a widely-used package for maintianing revision
histories of source code. This port is based on the official cvs-1.11.5
release, and requires that libgdbm-1.8.0-5 be installed as well.
This is an update to version 1.11.5 from 1.11.0; there have been lots of
changes under the hood. cvs-1.11.5 adds the rlog command, as well as a
number of bugfixes. AFAIK, the server mode is still broken. cvs-1.11.5
has been available for months as an unofficial test release, and on the
cygwin mirror system as an official test release for two weeks. There
have been no significant problems reported, so...
This version actually performs better on the self-tests than the old
cvs-1.11.0 version did, so that's good. I have not verified the
interaction of binary/text mounted repository directories with
binary/text mounted working dirs. (However, since text mounts were
basically broken in 1.11.0, any improvement in that area is gravy.)
binary-mounted text-mounted
repository dir repository dir
binary-mounted works ? (probably NOT work)
working dir
text-mounted works ? (probably NOT work)
working dir
See the NOTES below for my summary of the cvs selftest results.
--Chuck
INSTALLATION:
To update your installation, click on the "Install Cygwin now" link on
the http://sources.redhat.com/cygwin web page. This downloads setup.exe
to your system.
Run setup and answer all of the questions. PLEASE, PLEASE, PLEASE
choose a mirror site for your download. The 'sources.redhat.com' site
is badly overloaded. The mirrors below have the latest version of this
package:
ftp://ftp.sunsite.utk.edu/pub/cygwin/ (US)
ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/mirrors/cygnus/
(Germany)
ftp://ftp.ntua.gr/pub/pc/cygwin/ (Greece)
The setup.exe program will figure out what needs to be updated on your
system and should install the less package automatically.
If you have questions or comments, please send them to the Cygwin
mailing list at: cygwin AT sources DOT redhat DOT com . I would appreciate if you
would use this mailing list rather than emailing me directly. This
includes ideas and comments about the setup utility or Cygwin general.
If you want to make a point or ask a question the Cygwin mailing list is
the appropriate place.
*** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***
If you want to unsubscribe to the cygwin-announce mailing list, look at
the "List-Unsubscribe: " tag in the email header of this message. Send
email to the address specified there. It will be in the format:
cygwin-announce-unsubscribe-you=yourdomain DOT com AT sources DOT redhat DOT com
NOTES:
o updated to the 1.11.5 source
o requires cyggdbm.dll from libgdbm-1.8.0-5 package
If you have never used cvs before -- please do some research before
asking 'how-do-I' questions. Here's the really short version:
<unpack the binary distro, then>
export CVSROOT=/usr/local/src/CVS
cvs init
o test reports and user comments appear below.
--Chuck
------- Test reports from running 'make check'
------- cygwin-1.3.22 on W2Ksp3, CYGWIN=tty binmode ntsec
------- all drives mounted binary
You can only run the 'official' tests if you download the source archive
(cvs-1.11.5-1-src.tar.gz) and build cvs yourself. In any case, here are
some notes from my personal tests, running the 'make check' suite of
tests. This took several hours to complete.
Of the many hundreds of tests performed in local: mode and in remote:
mode, cvs failed only the following:
local: modules remote: modules
local: modules6 remote: modules6
local: binfiles3 remote: binfiles3
local: errmsg1 remote: errmsg1
remote: devcom3
remote: crerepos
To run the tests individually, don't type 'make check'. Instead, cd to
<top>/src and type:
'/bin/sh ./sanity.sh `pwd`/cvs list-of-tests-to-run'
You can find the list of all tests inside sanity.sh starting at line
674.
This list of failures may be scary, but it's better than the older
cygwin port of cvs-1.11.0-1. I'd appreciate any reports of success or
failure using this version.
--------------------------------------------
BEGIN cvs-1.11.5-1.CHECK-SUMMARY
--------------------------------------------
Table of contents:
Notes
Brief Summary of Test Failures
Gory Test Results
Of 123 local: tests and 123 remote: tests,
(each with many subtests), only the following
failures were observered:
local: modules remote: modules
local: modules6 remote: modules6
local: binfiles3 remote: binfiles3
local: errmsg1 remote: errmsg1
remote: devcom3
remote: crerepos
For Extremely Gory Test Results, see the files
cvs-1.11.5-1.check.localpass
cvs-1.11.5-1.check.localfail
cvs-1.11.5-1.check.remotepass
cvs-1.11.5-1.check.remotefail
--------------------------------------------
NOTES
--------------------------------------------
NOTES:
(0) All tests run on W2k, NTFS, cygwin=ntsec, binary mounts
for EVERYTHING, including the build dir, src dir, and
/tmp.
(1) I have made no attempt to fix or find any text/binary issues
in the cygwin port of cvs. It's entirely possible that any
extant issues have already been fixed in the official codebase.
It's also possible that bugs still lurk.
(2) The old cvs-1.11.0-1 cygwin release failed these tests
(only :local: access was tested):
join-readonly-conflict (subtest 1)
modules (subtest 148) failed with a coredump
errmsg1 (subtest 168)
binfiles3 (subtest 11)
rcs2 (subtest 7)
rcs3 (subtest 5)
So, the 1.11.5-1 actually performs better than 1.11.0-1; it
no longer fails the rcs2, rcs3, and join-readonly-conflict tests.
Of the four :local: failures, three are no change from the
earlier release. The only "new" failure is modules6 -- but
that test didn't exist in 1.11.0, so it isn't a regression, per se.
===> no regressions from cvs-1.11.0-1 <===
Further, we now can test pseudo-remote access using the :fork:
protocol, which mimics all of the remote access code by
forking a new copy of cvs.exe as a "local server". In that
case, the only test differences are:
:fork: fails devcom3
:fork: fails crerepos -- but that's expected
(3) coredumping is bad.
(4) Special 'targets' in the build script. After doing
cvs-1.11.2-1.sh conf, and build, you can also do:
cvs-1.11.5-1.sh check-local-pass
cvs-1.11.5-1.sh check-local-fail
cvs-1.11.5-1.sh check-remote-pass
cvs-1.11.5-1.sh check-remote-fail
check-local-pass runs all 119 local tests that I got successful
results for. Ditto check-remote-pass (117 passing tests).
However, check-local-fail and check-remote-fail run only the
few tests that failed in my testing.
(5) There may be a resource leak somewhere -- while the check-local-pass
tests run fine, I often got a "No space left on device" error
while running the check-remote-pass tests (even though I had PLENTY
of free disk space). These spurious failures would persist -- until
I rebooted the machine. At that point, I could continue the tests
from the point of failure, for another 30-40 tests.
This did NOT happen in :local: mode; only :fork: mode. It's
possible the :fork: code isn't closing file descriptors or
something...
However, I do not expect that these sorts of errors will crop up in
everyday usage.
--------------------------------------------
BRIEF SUMMARY OF TEST FAILURES
--------------------------------------------
FAILED TESTS:
local: modules (subtest modules-148a0)
causes a coredump...
local: modules6 (subtest modules6-1)
local: binfiles3 (subtest binfiles3-11)
expected. 'admin -o' is disabled on windows/cygwin
local: errmsg1 (subtest 168)
remote: modules (subtest modules-148a1)
again, causes a coredump
remote: modules6 (subtest modules6-1)
remote: binfiles3 (subtest binfiles3-11)
again, expected. 'admin -o' is disabled on windows/cygwin
remote: errmsg1 (subtest 168)
remote: devcom3 (subtest devcom3-9ar)
remote: crerepos
ERROR: cannot test remote CVS, because `rsh KHELDAR' fails.
when testing in remote mode, crerepos uses :ext: instead of
:fork:. However, even though I had rshd running -- it was
running as SYSTEM -- which means password entry is required.
This test expects passwordless rsh.
--------------------------------------------
GORY TEST DETAILS
--------------------------------------------
LOCAL TESTS
FAILED 4
modules
modules6
binfiles3
errmsg1
PASSED 119
version basica basicb basicc basic1
deep basic2 files spacefiles commit-readonly
commit-add-missing rdiff diff death death2
rm-update-message rmadd rmadd2 dirs dirs2
branches branches2 tagc tagf rcslib
multibranch import importb importc update-p
import-after-initial join join2 join3 join-readonly-conflict
join-admin join-admin-2 new newb conflicts
conflicts2 conflicts3 clean modules2 modules3
modules4 modules5 mkmodules-temp-file-removal cvsadm emptydir
abspath toplevel toplevel2 checkout_repository mflag
editor errmsg2 adderrmsg devcom devcom2
devcom3 watch4 watch5 unedit-without-baserev ignore
ignore-on-branch binfiles binfiles2 mcopy binwrap
binwrap2 binwrap3 mwrap info taginfo
config serverpatch log log2 logopt
ann ann-id crerepos rcs rcs2
rcs3 lockfiles backuprecover history big
modes modes2 modes3 stamps sticky
keyword keyword2 keywordlog head tagdate
multibranch2 tag8k admin reserved diffmerge1
diffmerge2 release multiroot multiroot2 multiroot3
multiroot4 rmroot reposmv pserver server
server2 client fork commit-d
REMOTE TESTS: (uses :fork:, not :ext: or :pserver:)
FAILED 5
modules
modules6
binfiles3
errmsg1
devcom3
crerepos
PASSED 117
version basica basicb basicc basic1
deep basic2 files spacefiles commit-readonly
commit-add-missing rdiff diff death death2
rm-update-message rmadd rmadd2 dirs dirs2
branches branches2 tagc tagf rcslib
multibranch import importb importc update-p
import-after-initial join join2 join3 join-readonly-conflict
join-admin join-admin-2 new newb conflicts
conflicts2 conflicts3 clean modules2 modules3
modules4 modules5 mkmodules-temp-file-removal cvsadm emptydir
abspath toplevel toplevel2 checkout_repository mflag
editor errmsg2 adderrmsg devcom devcom2
watch4 watch5 unedit-without-baserev ignore ignore-on-branch
binfiles binfiles2 mcopy binwrap binwrap2
binwrap3 mwrap info taginfo config
serverpatch log log2 logopt ann
ann-id rcs rcs2 rcs3 lockfiles
backuprecover history big modes modes2
modes3 stamps sticky keyword keyword2
keywordlog head tagdate multibranch2 tag8k
admin reserved diffmerge1 diffmerge2 release
multiroot multiroot2 multiroot3 multiroot4 rmroot
reposmv pserver server server2 client
fork commit-d
--------------------------------------------
END: cvs-1.11.5-1.CHECK-SUMMARY
--------------------------------------------
------- USERS' COMMENTS
works for me for everything I've tried. For whatever that's worth.
------------------------
cvs can't work with packages that contain files whose names are illegal
under MSWIN -- e.g. the eggdrop-1.5 package has a directory called
'AUX'. Reported by Travis Howell.
status: IGNORE. cvs isn't the right place to fix this. If it is to be
fixed, it should be done in the cygwin file access layer, not in cvs.
(Personally, I thing the maintainer of eggdrop and other poorly-behaved
packages should use names that are cross-platform compatible, but...)
addendum: Corinna sez 'Yep'.
http://sources.redhat.com/ml/cygwin/2000-08/msg00448.html
------------------------
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -