xref: /openbsd/gnu/usr.bin/cvs/BUGS (revision 404b540a)
1See the Cederqvist manual (cvs.texinfo) for information on how to
2report bugs (and what will happen to your bug reports if you do).
3
4The following is a list of some of the known bugs.  It may or may not
5be comprehensive.  We would dearly love for people to volunteer to
6help us keep it up to date (for starters, if you notice any
7inaccuracies, please let bug-cvs know as described in the Cederqvist
8manual).  There are some other reported bugs in MINOR-BUGS; the
9difference, at least in theory, is that those bugs are less serious.
10
11
12* For platform-specific information (in some cases including known
13bugs), see README.VMS, windows-NT/README, or os2/README.  There is no
14similar file for the unix-like operating systems (not yet, at least).
15This file also might contain some platform-specific bugs.
16
17
18* Need more work on the procedure for fixing it if a binary file is
19accidentally added in text mode (sanity.sh test cases, better
20documentation, probably update and/or admin -kb should update
21the -k setting in CVS/Entries).
22
23
24* Wrappers (-t/-f) do not work client/server, and there are a variety of other
25bugs and annoyances with wrappers.
26
27
28* If your login name contains a space or various other characters
29(particularly an issue on Windows), CVS will have trouble (it will
30write invalid RCS files, probably).  The fix would be to have CVS
31change such characters to underscores before writing them to the RCS
32file.  Furthermore, the LOGNAME or USER environment variables usually
33won't override the system login name, so this can be hard to work
34around.
35
36
37* If you specify the -w global option to client/server CVS, it only
38overrides a CVSREAD environment variable set on the client, not a
39CVSREAD variable which was set on the server (for example, in .bashrc
40when the server was run via rsh).  The fix of course will be to
41provide a "Option-read-write" request which sends -w, in addition to
42"Global_option -r" which sends -r.
43
44
45* "make remotecheck" sometimes fails on test 187a3 with
46    cvs server: in directory .:
47    cvs [server aborted]: *PANIC* administration files missing
48This does not happen every time.  (-kingdon, Nov 96, Red Hat linux 3.0.3).
49
50
51* The -m option to "cvs add" does not work with client/server CVS.
52CVS will accept the option, but it won't actually set the
53file's description.
54
55
56* cvs update walks into a user's work directory if there's a directory
57  of the same name in the repository even if the user's directory
58  doesn't yet have a CVS admin sub-directory.  This can greatly confuse
59  users who try to add the same directory at nearly the same time.
60
61
62* 'cvs admin' dumped core when files were missing from working directory
63  (and from the repository)?
64
65
66* The following bug was reported against CVS 1.9:
67
68    Create a module named test with a file named test in it.
69
70      cactus:sfavor> cvs get test
71      cvs checkout: Updating test
72      U test/test
73      cactus:sfavor> cd test
74      cactus:sfavor> cvs get test
75      cvs checkout: cannot chdir to test: Not a directory
76      cvs checkout: ignoring module test
77      Exit 1
78      cactus:sfavor> cvs update
79      cvs update: Updating .
80      rcs.c:2139: failed assertion `rev == NULL || isdigit (*rev)'
81      Abort (core dumped)
82      Exit 134
83
84
85* pcl-cvs doesn't like it when you try to check in a file which isn't
86  up-to-date.  The messages produced by the server perhaps don't match
87  what pcl-cvs is looking for.
88
89
90* From: billr@mpd.tandem.com (Bill Robertson)
91  Subject: Problem with rtag and the -D option
92  Date: Fri, 17 Mar 1995 10:53:29 -0600 (CST)
93
94  I have been trying to use the -D option to specify a date for tagging, but
95  rtag does not recognize the -D option. It is documented to do so and I've
96  tested the use of -D with cvs update and cvs diff and it works fine there.
97
98* From: "Charles M. Hannum" <mycroft@ai.mit.edu>
99  To: info-cvs@prep.ai.mit.edu
100  Subject: Still one more bug
101  Date: Sat, 25 Feb 1995 17:01:15 -0500
102
103  mycroft@duality [1]; cd /usr/src/lib/libc
104  mycroft@duality [1]; cvs diff -c2 '-D1 day ago' -Dnow
105  cvs server: Diffing .
106  cvs server: Diffing DB
107  cvs [server aborted]: could not chdir to DB: No such file or directory
108  mycroft@duality [1];
109
110  `DB' is an old directory, which no longer has files in it, and is
111  removed automatically when I use the `-P' option to checkout.
112
113  This error doesn't occur when run locally.
114
115  P.S.  Is anyone working on fixing these bugs?
116
117
118* From: Roland McGrath <roland@gnu.ai.mit.edu>
119  To: Cyclic CVS Hackers <info-cvs@prep.ai.mit.edu>
120  Subject: weird bug
121  Date: Sat, 25 Mar 1995 16:41:41 -0500
122  X-Windows: Even your dog won't like it.
123
124  I just noticed some droppings on my disk from what must be a pretty weird
125  bug in remote CVS.
126
127  In my home directory on a repository machine I use, I find:
128
129  drwxr-xr-x   4 roland   staff         512 Mar  7 14:08 cvs-serv28962
130  drwxr-xr-x   4 roland   staff         512 Mar  7 14:11 cvs-serv28978
131  drwxr-xr-x   4 roland   staff         512 Mar  7 15:13 cvs-serv29141
132
133  OK, so these are leftover cruft from some cvs run that got aborted.
134  Well, it should clean up after itself, but so what.
135
136  The last one is pretty dull; the real weirdness is the contents of the
137  first two directories.
138
139  duality 77 # ls -RF cvs-serv28978/
140  CVS/		cvs-serv28978/
141
142  cvs-serv28978/CVS:
143  Entries	    Repository
144
145  cvs-serv28978/cvs-serv28978:
146  arpa/
147
148  cvs-serv28978/cvs-serv28978/arpa:
149  CVS/		cvs-serv28978/
150
151  cvs-serv28978/cvs-serv28978/arpa/CVS:
152  Entries	    Repository
153
154  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978:
155  assert/
156
157  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert:
158  CVS/		cvs-serv28978/
159
160  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/CVS:
161  Entries	    Repository
162
163  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978:
164  bare/
165
166  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare:
167  CVS/		cvs-serv28978/
168
169  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/CVS:
170  Entries	    Repository
171
172  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978:
173  conf/
174
175  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf:
176  CVS/		cvs-serv28978/
177
178  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/CVS:
179  Entries	    Repository
180
181  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978:
182  crypt/
183
184  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt:
185  CVS/		cvs-serv28978/
186
187  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/CVS:
188  Entries	    Repository
189
190  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978:
191  csu/
192
193  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu:
194  CVS/		cvs-serv28978/
195
196  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/CVS:
197  Entries	    Repository
198
199  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978:
200  ctype/
201
202  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype:
203  CVS/		cvs-serv28978/
204
205  [...]
206
207  ls: cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype/cvs-serv28978/dirent/cvs-serv28978/elf/cvs-serv28978/gnu/cvs-serv28978/gnulib/cvs-serv28978/grp/cvs-serv28978/hurd/cvs-serv28978/hurd/hurd/cvs-serv28978/inet/cvs-serv28978/inet/arpa/cvs-serv28978/inet/netinet[...]/cvs-serv28978/posix/cvs-serv28978/posix/glob/cvs-serv28978/posix/gnu/cvs-serv28978/posix/sys/cvs-serv28978/protocols/cvs-serv28978/pwd/cvs-serv28978/resolv/cvs-serv28978/resolv/arpa/cvs-serv28978/resolv/sys/cvs-serv28978/resource/cvs-serv28978/resource/sys/cvs-serv28978/rpc/cvs-serv28978/setjmp/cvs-serv28978/signal/cvs-serv28978/signal/sys/cvs-serv28978/socket/cvs-serv28978/socket: File name too long
208  cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype/cvs-serv28978/dirent/cvs-serv28978/elf/cvs-serv28978/gnu/cvs-serv28978/gnulib/cvs-serv28978/grp/cvs-serv28978/hurd/cvs-serv28978/hurd/hurd/cvs-serv28978/inet/cvs-serv28978/inet/arpa/cvs-serv28978/inet/netinet[...]/cvs-serv28978/posix/glob/cvs-serv28978/posix/gnu/cvs-serv28978/posix/sys/cvs-serv28978/protocols/cvs-serv28978/pwd/cvs-serv28978/resolv/cvs-serv28978/resolv/arpa/cvs-serv28978/resolv/sys/cvs-serv28978/resource/cvs-serv28978/resource/sys/cvs-serv28978/rpc/cvs-serv28978/setjmp/cvs-serv28978/signal/cvs-serv28978/signal/sys/cvs-serv28978/socket/cvs-serv28978:
209
210* From: Roland McGrath <roland@gnu.ai.mit.edu>
211  To: Cyclic CVS Hackers <info-cvs@prep.ai.mit.edu>
212  Subject: bizarre failure mode
213  Date: Tue, 7 Mar 95 14:17:28 -0500
214
215  This is pretty weird:
216
217  CVS_SERVER='TMPDIR=. /usr/local/bin/cvs' ../cvs-build/src/cvs update -q
218  cvs [server aborted]: could not get working directory: Result too large
219  [Exit 1]
220  asylum 29 % grep 'Result too large' /usr/include/sys/errno.h
221  #define ERANGE          34              /* Result too large */
222
223  Now, getcwd fails with ERANGE when the buffer is too small.  But I don't
224  know why that would be the case; I don't think there are exceptionally long
225  directory names involved.  It would be robust to notice ERANGE and use a
226  bigger buffer.  But I suspect something weirder is going on.
227
228  The repository in question in duality.gnu.ai.mit.edu:/gd4/gnu/cvsroot/libc.
229
230  Send me a PGP-signed message if you want the password to use the machine
231  where the problem showed up.
232