xref: /netbsd-src/external/gpl2/rcs/dist/src/ChangeLog (revision 7bdc26784bf54dccf8e31c40b2af54b918f70f81)
1*7bdc2678SchristosFri Jun 16 06:19:24 1995  Paul Eggert  <eggert@twinsun.com>
2*7bdc2678Schristos
3*7bdc2678Schristos	* version.c: Version 5.7 released.
4*7bdc2678Schristos	* Makefile.in (TESTPREFIX): Remove; replaced with $(srcdir)/.
5*7bdc2678Schristos	* rcsutil.c (catchsig): Remove `return'.
6*7bdc2678Schristos	* Makefile.in, ci.c, co.c, conf.sh, ident.c, maketime.c, maketime.h,
7*7bdc2678Schristos	merge.c, merger.c, partime.c, partime.h, rcs.c, rcsbase.h, rcsclean.c,
8*7bdc2678Schristos	rcsdiff.c, rcsedit.c, rcsfcmp.c, rcsfnms.c, rcsgen.c, rcskeep.c,
9*7bdc2678Schristos	rcskeys.c, rcslex.c, rcsmap.c, rcsmerge.c, rcsrev.c, rcssyn.c, rcstest,
10*7bdc2678Schristos	rcstime.c, rcsutil.c, rlog.c:  Update FSF address.
11*7bdc2678Schristos
12*7bdc2678SchristosMon Jun  5 08:30:02 1995  Paul Eggert  <eggert@twinsun.com>
13*7bdc2678Schristos
14*7bdc2678Schristos	* version.c (RCS_version_string): Update to 5.6.8.1 (beta).
15*7bdc2678Schristos
16*7bdc2678SchristosFri Jun  2 18:19:00 1995  Paul Eggert  <eggert@twinsun.com>
17*7bdc2678Schristos
18*7bdc2678Schristos	* rcsutil.c (catchsigaction):
19*7bdc2678Schristos	New name for `catchsig', for sa_sigaction signature.
20*7bdc2678Schristos	Use nRCS even if !has_psiginfo, to remove unused variable warning.
21*7bdc2678Schristos	(setup_catchsig): Use sa_sigaction only if has_sa_sigaction.
22*7bdc2678Schristos	Use ENOTSUP only if defined.
23*7bdc2678Schristos	* conf.sh, conf.heg (has_sa_sigaction): New configuration variable.
24*7bdc2678Schristos
25*7bdc2678SchristosThu Jun  1 16:23:43 1995  Paul Eggert  <eggert@twinsun.com>
26*7bdc2678Schristos
27*7bdc2678Schristos	* version.c (RCS_version_string): Update to 5.6.8 (beta).
28*7bdc2678Schristos
29*7bdc2678Schristos	* Makefile.in:
30*7bdc2678Schristos	Renamed from Makefile; autoconf now preprocesses this file.
31*7bdc2678Schristos	Rewrite to follow GNU makefile standards.
32*7bdc2678Schristos	(clean): `rm core*' -> `rm core core.* *.core', for BSD/OS 2.0.
33*7bdc2678Schristos
34*7bdc2678Schristos	* ci.c (main): Add -kb.  Use `cmpdate', not `cmpnum', to compare dates.
35*7bdc2678Schristos	Don't worry about errno after ftruncate fails.
36*7bdc2678Schristos	Fix input file rewinding bug when large_memory && !maps_memory
37*7bdc2678Schristos	and checking in a branch tip.
38*7bdc2678Schristos
39*7bdc2678Schristos	(fixwork): Fall back on chmod if fchmod fails; it might be ENOSYS.
40*7bdc2678Schristos
41*7bdc2678Schristos	* co.c (main, preparejoin):
42*7bdc2678Schristos	Pass argument instead of using `join' static variable.
43*7bdc2678Schristos	(main): Add -kb.
44*7bdc2678Schristos
45*7bdc2678Schristos	* ident.c (exiterr, reportError):
46*7bdc2678Schristos	New functions, needed for DOS and OS/2 ports.
47*7bdc2678Schristos	(scanfile): Use them.
48*7bdc2678Schristos
49*7bdc2678Schristos	* rcsdiff.c (main):
50*7bdc2678Schristos	Pass "--binary" if -kb and if --binary makes a difference.
51*7bdc2678Schristos	Don't treat + options specially.
52*7bdc2678Schristos
53*7bdc2678Schristos	* rcsmerge.c (main):
54*7bdc2678Schristos	Report an error if -kb, so don't worry about binary stdout.
55*7bdc2678Schristos	Punctuate messages properly.  Rewrite to avoid `goto end'.
56*7bdc2678Schristos
57*7bdc2678Schristos	* rcs.c (main):
58*7bdc2678Schristos	Warn if no options were given.  Punctuate messages properly.
59*7bdc2678Schristos
60*7bdc2678Schristos	(sendmail): Rewind mailmess before flushing it.
61*7bdc2678Schristos	Output another warning if mail should work but fails.
62*7bdc2678Schristos
63*7bdc2678Schristos	(buildeltatext): Pass "--binary" if -kb and if --binary is needed.
64*7bdc2678Schristos
65*7bdc2678Schristos	* merger.c (normalize_arg): Don't treat + options specially.
66*7bdc2678Schristos	(merge): Don't make -A the default; always use -E.
67*7bdc2678Schristos	Always open working file in text mode.
68*7bdc2678Schristos
69*7bdc2678Schristos	* rlog.c (struct rcslockers): Renamed from `struct lockers'.
70*7bdc2678Schristos	(getnumericrev): Return error indication instead of ignoring errors.
71*7bdc2678Schristos	(main): Check it.  Don't use dateform.
72*7bdc2678Schristos	(recentdate, extdate): cmpnum -> cmpdate
73*7bdc2678Schristos
74*7bdc2678Schristos	* rcsclean.c (unlock): struct lock -> struct rcslock
75*7bdc2678Schristos
76*7bdc2678Schristos	* rcsedit.c (dirtpname): No longer external.
77*7bdc2678Schristos	(do_link): Simplify logic.
78*7bdc2678Schristos	(finisheditline, finishedit): Replace Iseek/Itell with definiens.
79*7bdc2678Schristos	(fopen_update_truncate): Replace `#if' with `if'.
80*7bdc2678Schristos	(keyreplace, makedirtemp): dirlen(x) -> basefilename(x)-x.
81*7bdc2678Schristos
82*7bdc2678Schristos	(edit_string): Fix bug: if !large_memory, a bogus trailing `@' was
83*7bdc2678Schristos	output at the end of incomplete lines.
84*7bdc2678Schristos
85*7bdc2678Schristos	(keyreplace): Do not assume that seeking backwards
86*7bdc2678Schristos	at the start of a file will fail; on some systems it succeeds.
87*7bdc2678Schristos	Convert C- and Pascal-style comment starts to ` *' in comment leader.
88*7bdc2678Schristos
89*7bdc2678Schristos	(rcswriteopen): Use fdSafer to get safer file descriptor.
90*7bdc2678Schristos	Open RCS file with FOPEN_RB.
91*7bdc2678Schristos
92*7bdc2678Schristos	(chnamemod): Work around bad_NFS_rename; don't ignore un_link result.
93*7bdc2678Schristos	Fall back on chmod if fchmod fails, since it might be ENOSYS.
94*7bdc2678Schristos
95*7bdc2678Schristos	(aflush): Move to rcslex.c.
96*7bdc2678Schristos
97*7bdc2678Schristos	* rcsfcmp.c (rcsfcmp): Add -kb support.
98*7bdc2678Schristos
99*7bdc2678Schristos	* rcsfnms.c (basefilename): Renamed from basename to avoid collisions.
100*7bdc2678Schristos	(dirlen): Remove (for similar reasons).
101*7bdc2678Schristos	(rcsreadopen): Open with FOPEN_RB.
102*7bdc2678Schristos	(SLASHSLASH_is_SLASH): Default is 0.
103*7bdc2678Schristos	(getcwd): Work around bad_wait_if_SIGCHLD_ignored bug.
104*7bdc2678Schristos
105*7bdc2678Schristos	* rcsgen.c (putadmin): Open RCS file with FOPEN_WB.
106*7bdc2678Schristos
107*7bdc2678Schristos	* rcskeep.c (getoldkeys): Don't panic if a Name: is empty.
108*7bdc2678Schristos
109*7bdc2678Schristos	* rcslex.c:
110*7bdc2678Schristos	(map_fd_deallocate, mmap_deallocate, read_deallocate,
111*7bdc2678Schristos	nothing_to_deallocate): New functions.
112*7bdc2678Schristos	(Iclose): If large_memory and maps_memory, use them to deallocate.
113*7bdc2678Schristos	(fd2RILE): Use map_fd if available.
114*7bdc2678Schristos	If one mapping method fails, try the next instead of giving up;
115*7bdc2678Schristos	if they all fail, fall back on ordinary read.
116*7bdc2678Schristos	Work around bug: root mmap over NFS succeeds, but accessing dumps core.
117*7bdc2678Schristos	Use MAP_FAILED macro for mmap failure, and `char *' instead of caddr_t.
118*7bdc2678Schristos	(advise_access): Use madvise only if this instance used mmap.
119*7bdc2678Schristos	(Iopen): Use fdSafer to get safer file descriptor.
120*7bdc2678Schristos	(aflush): Moved here from rcsedit.c.
121*7bdc2678Schristos
122*7bdc2678Schristos	* rcsrev.c (cmpdate, normalizeyear):
123*7bdc2678Schristos	New functions work around MKS incompatibility.
124*7bdc2678Schristos	(cmpnum, compartial): s[d] -> *(s+d) to work around Cray compiler bug.
125*7bdc2678Schristos	(genrevs, genbranch): cmpnum -> cmpdate
126*7bdc2678Schristos
127*7bdc2678Schristos	* rcssyn.c (expand_names): Add "b" for -kb.
128*7bdc2678Schristos	(getdelta): Don't strip leading "19" from MKS dates; see cmpdate.
129*7bdc2678Schristos
130*7bdc2678Schristos	* rcsutil.c (catchsig, restoreints, setup_catchsig):
131*7bdc2678Schristos	Use SA_SIGINFO, not has_psiginfo,
132*7bdc2678Schristos	to determine whether to use SA_SIGINFO feature,
133*7bdc2678Schristos	but also check at runtime whether the feature works.
134*7bdc2678Schristos	(catchsig): If an mmap_signal occurs, report the affected file name.
135*7bdc2678Schristos	(unsupported_SA_SIGINFO, accessName): New variables.
136*7bdc2678Schristos	(setup_catchsig): If using SA_SIGINFO, use sa_sigaction not sa_handler.
137*7bdc2678Schristos	If SA_SIGINFO fails, fall back on sa_handler method.
138*7bdc2678Schristos
139*7bdc2678Schristos	(readAccessFilenameBuffer, dupSafer, fdSafer, fopenSafer): New fns.
140*7bdc2678Schristos	(concatenate): Remove.
141*7bdc2678Schristos
142*7bdc2678Schristos	(runv): Work around bad_wait_if_SIGCHLD_ignored bug.
143*7bdc2678Schristos	Remove reference to OPEN_O_WORK.
144*7bdc2678Schristos
145*7bdc2678Schristos	* maketime.h (adjzone, str2time):
146*7bdc2678Schristos	Time zones are now (long) seconds, not (int) minutes.
147*7bdc2678Schristos	(const): Remove.
148*7bdc2678Schristos
149*7bdc2678Schristos	* maketime.c (difftm):
150*7bdc2678Schristos	Use smaller expressions, to avoid confusing buggy compilers.
151*7bdc2678Schristos	(adjzone, str2time): Time zones are (long) seconds, not (int) minutes.
152*7bdc2678Schristos
153*7bdc2678Schristos	* partime.c (zone_names):
154*7bdc2678Schristos	Add "jdt", since Japan might use it.  "nrt" -> "nrft".
155*7bdc2678Schristos	Use special markers 1 and -1, not TM_LOCAL_ZONE and TM_UNDEFINED_ZONE,
156*7bdc2678Schristos	to avoid integer overflow now that time zones are seconds, not minutes.
157*7bdc2678Schristos	(parse_decimal): Round to even.
158*7bdc2678Schristos	(parzone): Time zones are now (long) seconds, not (int) minutes,
159*7bdc2678Schristos	as allowed by ISO 8601.
160*7bdc2678Schristos
161*7bdc2678Schristos	* partime.h (TM_UNDEFINED_ZONE, zone):
162*7bdc2678Schristos	Now (long) seconds, not (int) minutes.
163*7bdc2678Schristos	(const): Remove.
164*7bdc2678Schristos
165*7bdc2678Schristos	* rcstime.c (dateform): Remove.
166*7bdc2678Schristos	(zone_offset, str2time_checked, zone_set, date2str):
167*7bdc2678Schristos	Time zones are now (long) seconds, not (int) minutes.
168*7bdc2678Schristos	(date2str): Use `-08' style time zone, not `-0800', for ISO 8601.
169*7bdc2678Schristos
170*7bdc2678Schristos	* conf.sh: `#!/bin/sh' -> `#! /bin/sh'; some picky hosts require this.
171*7bdc2678Schristos	Ensure we don't run as root; it would yield the wrong answers.
172*7bdc2678Schristos	Ensure the C compiler works on a trivial program first.
173*7bdc2678Schristos	Rename incoming environment variables to follow GNU makefile standards.
174*7bdc2678Schristos	Use $PREPARE_CC consistently.
175*7bdc2678Schristos
176*7bdc2678Schristos	(_POSIX_C_SOURCE, <mach/mach.h>, <net/errno.h>, has_map_fd,
177*7bdc2678Schristos	bad_NFS_rename, has_si_errno, bad_wait_if_SIGCHLD_ignored):
178*7bdc2678Schristos	New configuration options.
179*7bdc2678Schristos
180*7bdc2678Schristos	(has_sys_dir_h, text_equals_binary_stdio, text_work_stdio,
181*7bdc2678Schristos	FOPEN_R, FOPEN_W, FOPEN_WPLUS, has_caddr_t, DIFF3_A): Remove.
182*7bdc2678Schristos
183*7bdc2678Schristos	(O_BINARY, OPEN_O_WRONLY, FOPEN_RB, FOPEN_R_WORK, FOPEN_WB,
184*7bdc2678Schristos	FOPEN_W_WORK, FOPEN_WPLUS_WORK): New macros, for -kb support.
185*7bdc2678Schristos	(bad_fopen_wplus): Use "w+", not FOPEN_WPLUS.
186*7bdc2678Schristos
187*7bdc2678Schristos	(has_const, has_volatile): Rename test functions to avoid collisions.
188*7bdc2678Schristos	(has_fchmod, has_mmap, has_vfork): fileno(stdio) -> STDIN_FILENO.
189*7bdc2678Schristos	(has_fflush_input): Don't trust fflush's return value when testing.
190*7bdc2678Schristos	(has_mmap): Use MAP_FAILED if available.  Look at 0th byte, not last.
191*7bdc2678Schristos	Define to 0 if HP-UX 8.07 or 9.*, or SunOS 5.4 before patch 10.
192*7bdc2678Schristos	(has_psiginfo): Handler's 3rd arg is void *, as per Posix 1003.1b-1993.
193*7bdc2678Schristos	(has_varargs): Don't set if has_stdarg.
194*7bdc2678Schristos	(large_memory): Also define to 1 if has_map_fd.
195*7bdc2678Schristos	(mmap_signal): Don't try to deduce it if creat yields ETXTBSY.
196*7bdc2678Schristos
197*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
198*7bdc2678Schristos
199*7bdc2678Schristos	* rcsbase.h (SIZEABLE_PATH):
200*7bdc2678Schristos	Don't depend on PATH_MAX: it's not worth configuring.
201*7bdc2678Schristos	(Ioffset_type, BINARY_EXPAND, MIN_UNEXPAND, MIN_UNCHANGED_EXPAND):
202*7bdc2678Schristos	New macros.
203*7bdc2678Schristos	(maps_memory): New macro; replaces many instances of `has_mmap'.
204*7bdc2678Schristos	(cacheptr): Renamed from cachetell.
205*7bdc2678Schristos	(struct RILE): New alternate name for RILE; the type is now recursive.
206*7bdc2678Schristos	(deallocate): New member for RILE, used for generic deallocation.
207*7bdc2678Schristos	(cacheunget_): No longer take a failure arg; just call Ierror.
208*7bdc2678Schristos	(struct rcslock): Renamed from struct lock, to avoid collisions with
209*7bdc2678Schristos	system headers on some hosts.  All users changed.
210*7bdc2678Schristos	(basefilename): Renamed from basename, likewise.
211*7bdc2678Schristos	(dirtpname): Remove; no longer external.
212*7bdc2678Schristos	(dirlen, dateform): Remove; no longer used.
213*7bdc2678Schristos	(cmpdate, fopenSafer, fdSafer, readAccessFilenameBuffer): New fns.
214*7bdc2678Schristos	(zonelenmax): Increase to 9 for full ISO 8601 format.
215*7bdc2678Schristos	(catchmmapints): Depend on has_NFS.
216*7bdc2678Schristos
217*7bdc2678Schristos	* rcstest: Add -kb test.
218*7bdc2678Schristos	`#!/bin/sh' -> `#! /bin/sh'; some picky hosts require this.
219*7bdc2678Schristos	(ALL_CFLAGS): Renamed from CFLAGS.
220*7bdc2678Schristos	(LIBS): Renamed from LDLIBS.
221*7bdc2678Schristos	(CL): Add explicit `-o a.out'.
222*7bdc2678Schristos
223*7bdc2678SchristosThu Apr 14 06:55:24 1994  Paul Eggert  <eggert@twinsun.com>
224*7bdc2678Schristos
225*7bdc2678Schristos	* conf.sh:  Relax test for puts.  Improve test for mmap; don't
226*7bdc2678Schristos	rely on getpagesize, output better messages when it fails,
227*7bdc2678Schristos	don't assume you can mmap something larger than the file,
228*7bdc2678Schristos	output "SIGSEGV" if appropriate, add commentary.
229*7bdc2678Schristos
230*7bdc2678SchristosWed Apr 13 16:31:38 1994  Paul Eggert  <eggert@twinsun.com>
231*7bdc2678Schristos
232*7bdc2678Schristos	* version.c: now 5.6.7.4 (beta); intermediate versions were PC-related.
233*7bdc2678Schristos	* rcstime.c: Don't dump core if there's no zone.
234*7bdc2678Schristos	* rlog.c: Fix bug; `rlog -lxxx' inverted the sense of -l.
235*7bdc2678Schristos
236*7bdc2678SchristosSun Mar 20 04:52:58 1994  Paul Eggert  <eggert@twinsun.com>
237*7bdc2678Schristos
238*7bdc2678Schristos	* version.c: now 5.6.7 (beta)
239*7bdc2678Schristos
240*7bdc2678Schristos	* ci.c: Do not remove the lock when `ci -l' reverts.
241*7bdc2678Schristos	Do not generate a corrupted RCS file if the user modifies
242*7bdc2678Schristos	the working file while `ci' is running.
243*7bdc2678Schristos	* ci.c, co.c:
244*7bdc2678Schristos	Move buffer-flushes out of critical sections, as they aren't critical.
245*7bdc2678Schristos	* ci.c, co.c, merger.c, rcs.c, rcsbase.h, rcsdiff.c, rcsmerge.c,
246*7bdc2678Schristos	rcsutil.c: Specify subprocess input via file descriptor, not file name.
247*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsclean.c, rcsedit.c:
248*7bdc2678Schristos	Use ORCSerror to clean up after a fatal error.
249*7bdc2678Schristos
250*7bdc2678Schristos	* ident.c: Remove `exiting' from identExit.
251*7bdc2678Schristos
252*7bdc2678Schristos	* rcs.c, rcsgen.c: Flush stderr after prompt.
253*7bdc2678Schristos
254*7bdc2678Schristos	* rcsclean.c: Add void_closedir support.
255*7bdc2678Schristos
256*7bdc2678Schristos	* rlog.c: Emulate -V4's white space generation more precisely.
257*7bdc2678Schristos	-d'<DATE' now excludes DATE; the new syntax -d'<=DATE' includes it.
258*7bdc2678Schristos	* rlog.c, rcsgen.c: Work around SVR4 stdio performance bug.
259*7bdc2678Schristos
260*7bdc2678Schristos	* rcsbase.h: Add primitives for reading backwards from a RILE;
261*7bdc2678Schristos	this is needed to go back and find the $Log prefix.
262*7bdc2678Schristos
263*7bdc2678Schristos	* partime.c: Don't include rcsbase.h; you only need conf.h.
264*7bdc2678Schristos	Fix `am/pm' parsing bug.  Update time zones.
265*7bdc2678Schristos
266*7bdc2678Schristos	* rcsedit.c, rcsfcmp.c:
267*7bdc2678Schristos	Normally calculate the $Log prefix from context, not from RCS file.
268*7bdc2678Schristos
269*7bdc2678Schristos	* rcsfcmp.c:
270*7bdc2678Schristos	Calculate line numbers correctly even if the $Log prefix contains \n.
271*7bdc2678Schristos
272*7bdc2678Schristos	* rcsfnms.c: Strip trailing SLASHes from TMPDIR; some systems need it.
273*7bdc2678Schristos
274*7bdc2678Schristos	* rcslex.c: Don't worry if madvise fails.  Add Orewind.
275*7bdc2678Schristos
276*7bdc2678Schristos	* rcsutil.c: Move setmtime to rcsedit.c.
277*7bdc2678Schristos	Avoid messing with I/O buffers in the child process.
278*7bdc2678Schristos	Define dup in terms of F_DUPFD if it exists.
279*7bdc2678Schristos
280*7bdc2678Schristos	* Makefile: Make sure $(DESTBINDIR) exists before installing.
281*7bdc2678Schristos	Remove core* (for BSDI), RCS/a.*.
282*7bdc2678Schristos
283*7bdc2678Schristos	* conf.sh: Do errno checking before readlink checking.
284*7bdc2678Schristos	Check for GCC __attribute__ infelicities.
285*7bdc2678Schristos	Output a better error message for wait problems.
286*7bdc2678Schristos	Check for AIX 3.2.0 mmap bug.  Update HP-UX test.
287*7bdc2678Schristos	Fix SLASHes typo.  Add SEEK_CUR.  Configure off_t, has_fflush_input.
288*7bdc2678Schristos	Improve test for __attribute__((noreturn)).
289*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
290*7bdc2678Schristos
291*7bdc2678Schristos	* rcstest: Port to BSD/386 1.1's /bin/sh brain damage.
292*7bdc2678Schristos	Test for new $Log behavior.
293*7bdc2678Schristos
294*7bdc2678Schristos	* co.c, merge.c, merger.c, rcs.c, rcsbase.h, rcsdiff.c, rcsedit.c,
295*7bdc2678Schristos	rcsfcmp.c, rcsfnms.c, rcsgen.c, rcskeep.c, rcslex.c, rcsmerge.c,
296*7bdc2678Schristos	rcsrev.c, rcssyn.c, rcsutil.c, rlog.c: Remove lint.
297*7bdc2678Schristos
298*7bdc2678SchristosTue Nov  9 17:55:29 1993  Paul Eggert  <eggert@twinsun.com>
299*7bdc2678Schristos
300*7bdc2678Schristos	* version.c: now 5.6.6 (beta)
301*7bdc2678Schristos	* merge.c, rcsclean.c, rcsutil.c, rlog.c:
302*7bdc2678Schristos	-V now prints version on stdout and exits.
303*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsdiff.c, rcsmerge.c:
304*7bdc2678Schristos	Likewise.  Don't print usage twice.
305*7bdc2678Schristos	* Makefile: Add -Dhas_conf_h, maketime.h, partime.h, rcstime.c.
306*7bdc2678Schristos	ident wants version.o.
307*7bdc2678Schristos	* conf.heg, conf.sh: gcc doesn't do constant expressions in
308*7bdc2678Schristos	__attribute__((format(...))).
309*7bdc2678Schristos	* conf.sh: Quote $dots.
310*7bdc2678Schristos	* ident.c: Add -V.
311*7bdc2678Schristos	* maketime.c: Move RCS-specific stuff into rcstime.c.
312*7bdc2678Schristos	* maketime.h, partime.h, rcstime.c: New files.
313*7bdc2678Schristos	* partime.c: Complete rewrite from scratch.
314*7bdc2678Schristos	* rcsbase.h: Move RCS-specific time handling into rcstime.c.
315*7bdc2678Schristos	printf_string now takes two arguments, alas.
316*7bdc2678Schristos	* rcskeep.c: Use simpler time zone parsing strategy
317*7bdc2678Schristos	now that we're using ISO 8601 format.
318*7bdc2678Schristos	* rcslex.c: Fix `label: }' typo.
319*7bdc2678Schristos	* rcsrev.c: Fix format string typos.
320*7bdc2678Schristos
321*7bdc2678SchristosWed Nov  3 18:25:07 1993  Paul Eggert  <eggert@twinsun.com>
322*7bdc2678Schristos
323*7bdc2678Schristos	* version.c: Initial revision; now 5.6.5 (beta)
324*7bdc2678Schristos
325*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsdiff.c, rcsclean.c, rcsedit.c, rcsmerge.c,
326*7bdc2678Schristos	rcsrev.c, rlog.c: Add -z.
327*7bdc2678Schristos
328*7bdc2678Schristos	* ci.c: Don't subtract from RCS file timestamp even if -T.
329*7bdc2678Schristos	Scan for and use Name keyword if -k.
330*7bdc2678Schristos	* ci.c, rcs.c, rcsbase.h, rcsgen.c, rcslex.c, rcssyn.c:
331*7bdc2678Schristos	Don't discard ignored phrases.
332*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsclean.c, rcsdiff.c, rcsfnms.c,
333*7bdc2678Schristos	rcsgen.c, rcskeep.c, rcslex.c, rcsrev.c, rcssyn.c:
334*7bdc2678Schristos	Improve quality of diagnostics.
335*7bdc2678Schristos
336*7bdc2678Schristos	* co.c: Generate a value for the Name keyword.
337*7bdc2678Schristos	* co.c, rcsbase.h: Don't arbitrarily limit the number of joins.
338*7bdc2678Schristos
339*7bdc2678Schristos	* ident.c: Test for char == EOF, not char < 0.
340*7bdc2678Schristos
341*7bdc2678Schristos	* rcs.c: Don't lose track of -m or -t when there are no other changes.
342*7bdc2678Schristos
343*7bdc2678Schristos	* rcsdiff.c: Put revision numbers in -c output.
344*7bdc2678Schristos	* rcsdiff.c, rcsbase.h, rcsedit.c, rcskeys.c: Add Name keyword.
345*7bdc2678Schristos	* rcsdiff.c, rcsmerge.c: Pass -Vn to `co'.
346*7bdc2678Schristos	* rcsdiff.c, rcsmerge.c, rlog.c: Ignore -T.
347*7bdc2678Schristos
348*7bdc2678Schristos	* rcsmerge.c:
349*7bdc2678Schristos	Pass unexpanded revision name to `co', so that $Name works.
350*7bdc2678Schristos	* rcsmerge.c, rcsbase.h, merge.c, merger.c:
351*7bdc2678Schristos	Add -A, -E, -e.  Allow up to three labels.
352*7bdc2678Schristos
353*7bdc2678Schristos	* rlog.c: Add -N.
354*7bdc2678Schristos
355*7bdc2678Schristos	* rcsbase.h: Remove `nil'.  Improve quality of prototypes.
356*7bdc2678Schristos
357*7bdc2678Schristos	* partime.c: Simplify time zone table.
358*7bdc2678Schristos
359*7bdc2678Schristos	* rcsedit.c: If bad_unlink, ignore errno when unlink fails.
360*7bdc2678Schristos	Escape white space, $, and \ in keyword string file names.
361*7bdc2678Schristos	Don't output 2 spaces between date and time after Log.
362*7bdc2678Schristos
363*7bdc2678Schristos	* rcskeep.c: Scan for Name keyword.
364*7bdc2678Schristos
365*7bdc2678Schristos	* rcsfnms.c: Determine whether a file name is too long indirectly,
366*7bdc2678Schristos	by examining inode numbers, instead of trying to use operating system
367*7bdc2678Schristos	primitives like pathconf, which are not trustworthy in general.
368*7bdc2678Schristos	File names may now hold white space or $.
369*7bdc2678Schristos	Do not flatten ../X in pathnames; that may be wrong for symlinks.
370*7bdc2678Schristos	Add getabsname hook.
371*7bdc2678Schristos
372*7bdc2678Schristos	* rcsfcmp.c:
373*7bdc2678Schristos	Fix yet another off-by-one error when comparing Log string expansions.
374*7bdc2678Schristos
375*7bdc2678Schristos	* rcsrev.c: Add `namedrev' for Name support.
376*7bdc2678Schristos	Revision `.N' now stands for `D.N', where D is the default branch.
377*7bdc2678Schristos
378*7bdc2678Schristos	* rcssyn.c: Parse MKS dates; ignore \r in diff control lines.
379*7bdc2678Schristos
380*7bdc2678Schristos	* rcsutil.c: Use psiginfo and setreuid if available.
381*7bdc2678Schristos	Move date2str to maketime.c.
382*7bdc2678Schristos
383*7bdc2678Schristos	* Makefile: Fix DIFF3_A default.
384*7bdc2678Schristos
385*7bdc2678Schristos	* conf.sh: Update for RCS 5.6.5 (much better configuration messages).
386*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
387*7bdc2678Schristos
388*7bdc2678Schristos	* rcstest: Compile our own program instead of using `tr'.
389*7bdc2678Schristos	Use rlog to get UTC instead of relying on `date -u'.
390*7bdc2678Schristos	Test `Name' keyword.
391*7bdc2678Schristos
392*7bdc2678Schristos	* rcsfreeze.sh: Don't ignore RCS/.*,v files.
393*7bdc2678Schristos
394*7bdc2678SchristosTue Jun 29 17:03:43 1993  Paul Eggert  <eggert@twinsun.com>
395*7bdc2678Schristos
396*7bdc2678Schristos	* maketime.c: Add -z support.  New function zone_set, date2str.
397*7bdc2678Schristos	str2time now has default_zone arg.  Parenthesize to keep GCC happy.
398*7bdc2678Schristos
399*7bdc2678SchristosTue Jul 28 16:12:44 1992  Paul Eggert  <eggert@twinsun.com>
400*7bdc2678Schristos
401*7bdc2678Schristos	Version 5.6.4 (beta)
402*7bdc2678Schristos
403*7bdc2678Schristos	* ci.c: Add -i, -j.  Check that working and RCS files are distinct.
404*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsclean.c, rcsdiff.c, rcsmerge.c, rcsutil.c,
405*7bdc2678Schristos	rlog.c: Add -V.
406*7bdc2678Schristos
407*7bdc2678Schristos	* co.c, rcsclean.c: Check that working and RCS files are distinct.
408*7bdc2678Schristos
409*7bdc2678Schristos	* rcs.c: rcs -l now asks whether you want to break the lock.
410*7bdc2678Schristos	Set RCS file's mode and time at right moment.
411*7bdc2678Schristos
412*7bdc2678Schristos	* rcsclean.c: Fix -n bugs.
413*7bdc2678Schristos
414*7bdc2678Schristos	* rcsdiff.c: Use co -M for better dates with traditional diff -c.
415*7bdc2678Schristos
416*7bdc2678Schristos	* rlog.c: Don't miss B.0 when handling branch B.
417*7bdc2678Schristos	Diagnose missing `,' in -r.
418*7bdc2678Schristos	* rlog.c, rcsedit.c, rcslex.c, rcsrev.c, rcssyn.c:
419*7bdc2678Schristos	Avoid `unsigned'; this avoids the ULONG_MAX/10 configuration problem.
420*7bdc2678Schristos	* rlog.c, rcsbase.h, rcsedit.c, rcsgen.c rcsfcmp.c, rcskeep.c, rcslex.c,
421*7bdc2678Schristos	rcssyn.c: Statement macro names now end in _.
422*7bdc2678Schristos
423*7bdc2678Schristos	* partime.c: Fix time zones again.
424*7bdc2678Schristos
425*7bdc2678Schristos	* rcsedit.c: Some hosts have readlink but not ELOOP.
426*7bdc2678Schristos	Preserve dates more systematically.
427*7bdc2678Schristos
428*7bdc2678Schristos	* rcsgen.c, rcsfnms.c: Be consistent about pathnames vs filenames.
429*7bdc2678Schristos
430*7bdc2678Schristos	* rcsfnms.c: Add .sty.  .pl now implies Perl, not Prolog.
431*7bdc2678Schristos	Fix fdlock initialization bug.  Check that $PWD is really ".".
432*7bdc2678Schristos
433*7bdc2678Schristos	* rcslex.c, rcsrev.c:  Identifiers may now start with a digit and
434*7bdc2678Schristos	(unless they are symbolic names) may contain `.'.
435*7bdc2678Schristos
436*7bdc2678Schristos	* rcsutil.c: has_sigaction overrides sig_zaps_handler.  Fix -M bug.
437*7bdc2678Schristos	Add mmap_signal, which minimizes signal handling for non-mmap hosts.
438*7bdc2678Schristos
439*7bdc2678Schristos	* Makefile: Add BINDIR.  Update for GCC 2.  Redo configuration scheme.
440*7bdc2678Schristos	Add rcsvers.c.
441*7bdc2678Schristos
442*7bdc2678Schristos	* conf.sh: Output more chatter to keep builders happy.
443*7bdc2678Schristos	Fix several portability bugs: fileno, readlink, readlink errno,
444*7bdc2678Schristos	HP-UX brain damage, execv, mmap, waitpid, same_file.  Remove ULONG_MAX.
445*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
446*7bdc2678Schristos
447*7bdc2678Schristos	* rcstest: Test rcsclean.  rm -f a.c more often.
448*7bdc2678Schristos	*'! 1.1.1.1') -> *!\ 1.1.1.1) to avoid some shell bugs.
449*7bdc2678Schristos	Set PWD unconditionally.  Don't assume RCS knows date's time zone.
450*7bdc2678Schristos	Avoid `tr' if possible; it's not standardized well.
451*7bdc2678Schristos
452*7bdc2678SchristosSun May 31 08:29:18 1992  Paul Eggert  <eggert@twinsun.com>
453*7bdc2678Schristos
454*7bdc2678Schristos	* maketime.c:
455*7bdc2678Schristos	Complete rewrite from scratch, because we need to work even if
456*7bdc2678Schristos	the underlying implementation has leap seconds.
457*7bdc2678Schristos
458*7bdc2678Schristos	* partime.c: The special time zone LOCAL_TIME+1 now tells maketime
459*7bdc2678Schristos	that no zone was given.
460*7bdc2678Schristos
461*7bdc2678SchristosMon Feb 17 23:02:28 1992  Paul Eggert  <eggert@twinsun.com>
462*7bdc2678Schristos
463*7bdc2678Schristos	Version 5.6.3 (beta)
464*7bdc2678Schristos
465*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsclean.c, rcsedit.c, rcsutil.c:
466*7bdc2678Schristos	Add -T.
467*7bdc2678Schristos	* ci.c: `-rREV' now just specifies a revision REV;
468*7bdc2678Schristos	only bare `-r' reverts to default.
469*7bdc2678Schristos
470*7bdc2678Schristos	* rcsdiff.c: Output more readable context diff headers.
471*7bdc2678Schristos	Suppress needless checkout and comparison of identical revisions.
472*7bdc2678Schristos
473*7bdc2678Schristos	* maketime.c:
474*7bdc2678Schristos	When setting a file's modification time, set its access time to now.
475*7bdc2678Schristos
476*7bdc2678Schristos	* rcsbase.h, rcslex.c, rcsutil.c: Work around NFS mmap SIGBUS problem.
477*7bdc2678Schristos
478*7bdc2678Schristos	* rcsfnms.c: `a/RCS/b/c' is now an RCS file with an empty extension,
479*7bdc2678Schristos	not just `a/b/RCS/c'.
480*7bdc2678Schristos
481*7bdc2678Schristos	* conf.sh: Add has_utimbuf to avoid echo line length limit.
482*7bdc2678Schristos	Some sigactions don't allow 2nd arg of type struct sigaction const *.
483*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
484*7bdc2678Schristos
485*7bdc2678Schristos	* rcsfreeze.sh: Use `rcs -nN:' to simplify the code.
486*7bdc2678Schristos
487*7bdc2678SchristosMon Jan 27 16:42:53 1992  Paul Eggert  <eggert@twinsun.com>
488*7bdc2678Schristos
489*7bdc2678Schristos	Version 5.6.2 (beta)
490*7bdc2678Schristos
491*7bdc2678Schristos	* ci.c: Always unlock branchpoint if caller has a lock.
492*7bdc2678Schristos	* ci.c, conf.sh, rcsedit.c: Support bad_chmod_close.
493*7bdc2678Schristos	* ci.c, co.c, conf.sh, rcs.c, rcsbase.h, rcsclean.c, rcsedit.c,
494*7bdc2678Schristos	rcsfnms.c, rcsgen.c: Support bad_creat0.
495*7bdc2678Schristos	* ci.c, co.c, ident.c, merge.c, rcs.c, rcsbase.h, rcsclean.c,
496*7bdc2678Schristos	rcsdiff.c, rcsmerge.c, rlog.c, rcsutil.c: lint -> RCS_lint
497*7bdc2678Schristos
498*7bdc2678Schristos	* rcs.c: Add -M.
499*7bdc2678Schristos	Avoid invoking umask(); it's one less thing to configure.
500*7bdc2678Schristos
501*7bdc2678Schristos	* rcsdiff.c: Add GNU diff 1.15.2's new options.
502*7bdc2678Schristos
503*7bdc2678Schristos	* rlog.c: Don't duplicate unexpected_EOF's function.
504*7bdc2678Schristos
505*7bdc2678Schristos	* maketime.c: Fix day of week bug with dates after February 28, 2100.
506*7bdc2678Schristos
507*7bdc2678Schristos	* rcsfnms.c: Fix bug: Expand and Ignored weren't reinitialized.
508*7bdc2678Schristos	Avoid `char const c=ch;' compiler bug.
509*7bdc2678Schristos
510*7bdc2678Schristos	* rcsgen.c: Move put routines here from rcssyn.c.
511*7bdc2678Schristos	* rcssyn.c: Move put routines to rcsgen.c.
512*7bdc2678Schristos
513*7bdc2678Schristos	* rcsutil.c: Work around NFS mmap bug that leads to SIGBUS core dumps.
514*7bdc2678Schristos
515*7bdc2678Schristos	* Makefile: Add DESTRCSDIR.  lint -> RCS_lint
516*7bdc2678Schristos
517*7bdc2678Schristos	* conf.sh: Add workaround for `volatile sig_atomic_t' screwups,
518*7bdc2678Schristos	and for Ultrix 4.2 prototype brain damage.
519*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
520*7bdc2678Schristos
521*7bdc2678SchristosThu Jan  9 19:02:09 1992  Paul Eggert  <eggert@twinsun.com>
522*7bdc2678Schristos
523*7bdc2678Schristos	* Makefile: $(LDLIBS) -o $@ -> -o $@ $(LDLIBS) to keep MS-DOS happy.
524*7bdc2678Schristos
525*7bdc2678SchristosMon Jan  6 03:04:24 1992  Paul Eggert  <eggert@twinsun.com>
526*7bdc2678Schristos
527*7bdc2678Schristos	Version 5.6.1 (beta)
528*7bdc2678Schristos
529*7bdc2678Schristos	* ci.c: Invoke utime() before chmod() to keep some buggy systems happy.
530*7bdc2678Schristos
531*7bdc2678Schristos	* co.c, merge.c, rcsdiff.c, rcsmerge.c, rlog.c: Update usage string.
532*7bdc2678Schristos
533*7bdc2678Schristos	* rcs.c:
534*7bdc2678Schristos	Avoid changing RCS file in common cases where no change can occur.
535*7bdc2678Schristos
536*7bdc2678Schristos	* rcsbase.h, rcsedit.c, rcsfnms.c, rcsrev.c, rcssyn.c, rcsutil.c,
537*7bdc2678Schristos	rlog.c: while (E) ; -> while (E) continue;
538*7bdc2678Schristos
539*7bdc2678Schristos	* rcsedit.c: Add setmode parameter to chnamemod.
540*7bdc2678Schristos	addsymbol now reports changes.
541*7bdc2678Schristos
542*7bdc2678Schristos	* rcsfnms.c: Shorten long (>31 chars) name.
543*7bdc2678Schristos
544*7bdc2678Schristos	* rcslex.c: Use OPEN_O_BINARY if mode contains 'b'.
545*7bdc2678Schristos	* rcsutil.c: O_BINARY -> OPEN_O_WORK
546*7bdc2678Schristos
547*7bdc2678Schristos	* rcssyn.c: ULONG_MAX/10 -> ULONG_MAX_OVER_10
548*7bdc2678Schristos
549*7bdc2678Schristos	* Makefile: Remove obsolete AIX comment.  sh -> $(SHELL).
550*7bdc2678Schristos
551*7bdc2678Schristos	* conf.sh: Simplify MS-DOS port; work around several porting anomalies.
552*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
553*7bdc2678Schristos
554*7bdc2678Schristos	* rcstest: mkdir RCS if it doesn't already exist.
555*7bdc2678Schristos
556*7bdc2678SchristosWed Nov 20 18:21:10 1991  Paul Eggert  <eggert@twinsun.com>
557*7bdc2678Schristos
558*7bdc2678Schristos	Version 5.6 released.
559*7bdc2678Schristos	* ci.c, rcs.c: Don't read the delta tree from a nonexistent RCS file.
560*7bdc2678Schristos	* rcsmerge.c: Don't Iopen(f, "r+"); it's not portable.
561*7bdc2678Schristos	* conf.sh, conf.heg: Remove FOPEN_RPLUS.
562*7bdc2678Schristos	* rcstest: Test for rcs -i -A bug.
563*7bdc2678Schristos
564*7bdc2678SchristosSun Nov  3 03:30:44 1991  Paul Eggert  <eggert@twinsun.com>
565*7bdc2678Schristos
566*7bdc2678Schristos	* rcsclean.c:
567*7bdc2678Schristos	Don't remove working files that look like they are checked out.
568*7bdc2678Schristos
569*7bdc2678Schristos	* rcsedit.c: Move the warning about link breaking
570*7bdc2678Schristos	to where they're actually being broken.
571*7bdc2678Schristos
572*7bdc2678Schristos	* rcslex.c: Fix porting bug to ancient hosts lacking vfprintf.
573*7bdc2678Schristos
574*7bdc2678Schristos	* conf.sh: Detect yet another const compiler bug.
575*7bdc2678Schristos	Don't declare args to mmap, strchr, strrchr, in case they disagree.
576*7bdc2678Schristos
577*7bdc2678SchristosMon Oct  7 17:32:46 1991  Paul Eggert  <eggert@twinsun.com>
578*7bdc2678Schristos
579*7bdc2678Schristos	* ci.c, rcs.c, rcsdiff.c: Remove lint.
580*7bdc2678Schristos	* ci.c, rcsgen.c: Fix log bugs, e.g. ci -t/dev/null when has_mmap.
581*7bdc2678Schristos	* co.c: -k affects just working file, not RCS file.
582*7bdc2678Schristos	* rcsfcmp.c: Count log lines correctly.
583*7bdc2678Schristos	* conf.sh: Add declare_signal, large_memory, O_EXCL.  Remove creat.
584*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
585*7bdc2678Schristos	* rcsbase.h, rcsedit.c, rcslex.c, rcsutil.c:
586*7bdc2678Schristos	Support piece tables even if !has_mmap.
587*7bdc2678Schristos	* rcsedit.c: Fix rare NFS bugs.
588*7bdc2678Schristos	* Makefile: Fix Minix description.
589*7bdc2678Schristos
590*7bdc2678SchristosThu Sep 26 23:10:30 1991  Paul Eggert  <eggert@twinsun.com>
591*7bdc2678Schristos
592*7bdc2678Schristos	* ci.c: Plug file descriptor leak.
593*7bdc2678Schristos
594*7bdc2678SchristosTue Sep 24 00:49:12 1991  Paul Eggert  <eggert@twinsun.com>
595*7bdc2678Schristos
596*7bdc2678Schristos	* rcsfnms.c: Don't export bindex().
597*7bdc2678Schristos	* rcslex.c: Don't export Ierror(), errsay().
598*7bdc2678Schristos	* rcsbase.h: Remove unexported functions.
599*7bdc2678Schristos	* Makefile: Put MS-DOS support into a separate distribution.
600*7bdc2678Schristos
601*7bdc2678SchristosWed Sep 18 07:29:10 1991  Paul Eggert  <eggert@twinsun.com>
602*7bdc2678Schristos
603*7bdc2678Schristos	* ci.c: Work around a common ftruncate() bug.
604*7bdc2678Schristos
605*7bdc2678SchristosTue Sep 17 19:07:40 1991  Paul Eggert  <eggert@twinsun.com>
606*7bdc2678Schristos
607*7bdc2678Schristos	* rlog.c: Getscript() didn't uncache partial lines.
608*7bdc2678Schristos	* rcsedit.c: SGI readlink() yields ENXIO, not EINVAL, for nonlinks.
609*7bdc2678Schristos
610*7bdc2678SchristosTue Sep 10 22:36:26 1991  Paul Eggert  <eggert@twinsun.com>
611*7bdc2678Schristos
612*7bdc2678Schristos	* ci.c, rcsgen.c: Fix test for redirected stdin.
613*7bdc2678Schristos
614*7bdc2678Schristos	* ident.c: Open files with FOPEN_R, not FOPEN_R_WORK,
615*7bdc2678Schristos	because they might be executables, not working files.
616*7bdc2678Schristos
617*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
618*7bdc2678Schristos
619*7bdc2678Schristos	* Makefile: Prepend $(DIFFPREFIX). to PATH.
620*7bdc2678Schristos	Adjust `make clean' for DOS.
621*7bdc2678Schristos
622*7bdc2678SchristosWed Aug 21 00:29:52 1991  Paul Eggert  <eggert@twinsun.com>
623*7bdc2678Schristos
624*7bdc2678Schristos	* rcstest: Fix test for non-text diffs; it missed some botched diffs.
625*7bdc2678Schristos
626*7bdc2678SchristosTue Aug 20 23:05:00 1991  Paul Eggert  <eggert@twinsun.com>
627*7bdc2678Schristos
628*7bdc2678Schristos	* merger.c: Fix !DIFF3_BIN porting bug.
629*7bdc2678Schristos	* conf.sh: Fix porting bugs for #include, SENDMAIL, pwd,
630*7bdc2678Schristos	cc with wrong exit status.
631*7bdc2678Schristos
632*7bdc2678SchristosMon Aug 19 23:17:54 1991  Paul Eggert  <eggert@twinsun.com>
633*7bdc2678Schristos
634*7bdc2678Schristos	* ci.c: When there are no changes,
635*7bdc2678Schristos	revert to previous revision instead of aborting.
636*7bdc2678Schristos	* ci.c, co.c, rcs.c: Add -M.
637*7bdc2678Schristos	* ci.c, rcs.c, rcsbase.h, rcsedit.c, rcsgen.c: Add piece tables.
638*7bdc2678Schristos	* ci.c, rcs.c, rcsdiff.c, rcsmerge.c, rcsrev.c: Add -r$.
639*7bdc2678Schristos	* ci.c, co.c, merge.c, rcs.c, rcsbase.h, rcsdiff.c, rcsedit.c,
640*7bdc2678Schristos	rcsfcmp.c, rcsfnms.c, rcsgen.c, rcskeep.c, rcslex.c, rcsmerge.c,
641*7bdc2678Schristos	rcsrev.c, rcssyn.c, rcsutil.c, rlog.c: Tune.
642*7bdc2678Schristos
643*7bdc2678Schristos	* co.c: Warn before removing somebody else's file.
644*7bdc2678Schristos	Fix co -j bugs.
645*7bdc2678Schristos
646*7bdc2678Schristos	* ident.c: Report read errors immediately.
647*7bdc2678Schristos
648*7bdc2678Schristos	* merge.c: Remove lint.
649*7bdc2678Schristos
650*7bdc2678Schristos	* rcs.c, rlog.c: Revision separator is `:', not `-'.
651*7bdc2678Schristos
652*7bdc2678Schristos	* rcsclean.c: Rewrite from scratch.
653*7bdc2678Schristos
654*7bdc2678Schristos	* rcsdiff.c: Add RCSINIT.
655*7bdc2678Schristos
656*7bdc2678Schristos	* rlog.c: Check for missing and duplicate logs.
657*7bdc2678Schristos	Permit log messages that do not end in newline (including empty logs).
658*7bdc2678Schristos
659*7bdc2678Schristos	* rcskeys.c: Say `T const' instead of `const T';
660*7bdc2678Schristos	it's less confusing for pointer types.
661*7bdc2678Schristos	(This change was made in other source files too.)
662*7bdc2678Schristos
663*7bdc2678Schristos	* rcslex.c: Add eoflex(), mmap support.
664*7bdc2678Schristos
665*7bdc2678Schristos	* rcsrev.c: Add `-rB.'.  Remove botches like `<now>' from messages.
666*7bdc2678Schristos
667*7bdc2678Schristos	* conf.sh: Add ALL_ABSOLUTE, FOPEN_RPLUS, ftell, getlogin_is_secure,
668*7bdc2678Schristos	RCS_SHELL, sigmask, strchr, TZ_must_be_set.
669*7bdc2678Schristos	Add checks for dirent, ftruncate, link, madvise, memcmp, memcpy,
670*7bdc2678Schristos	memmove, mmap, spawn, wait, utimbuf.
671*7bdc2678Schristos	Improve checks for const/volatile, va_start.
672*7bdc2678Schristos	Remove atoi, has_utime, strncmp, strncpy.
673*7bdc2678Schristos	Make NEW_LINK_BEHAVIOR the default.
674*7bdc2678Schristos	sgi has seteuid.
675*7bdc2678Schristos	Don't try to guess the bad line number by parsing the error message.
676*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
677*7bdc2678Schristos
678*7bdc2678Schristos	* maketime.c: Add setfiledate, str2time, TZ_must_be_set.
679*7bdc2678Schristos
680*7bdc2678Schristos	* merger.c: Plug memory leak.
681*7bdc2678Schristos
682*7bdc2678Schristos	* partime.c: Update time zones.
683*7bdc2678Schristos
684*7bdc2678Schristos	* rcsbase.h, rcsedit.c: Add NFS bug workarounds.
685*7bdc2678Schristos	* rcsedit.c: Catch odd filenames.
686*7bdc2678Schristos
687*7bdc2678Schristos	* rcsfnms.c: Fix messages when rcswriteopen fails.
688*7bdc2678Schristos	Look in $TMP and $TEMP if $TMPDIR isn't set.
689*7bdc2678Schristos
690*7bdc2678Schristos	* rcsmap.c: Don't assume EOF == -1.
691*7bdc2678Schristos
692*7bdc2678Schristos	* rcsutil.c: Add spawn() support.
693*7bdc2678Schristos	Explicate assumptions about getting invoker's name.
694*7bdc2678Schristos	Standardize user-visible dates.
695*7bdc2678Schristos
696*7bdc2678Schristos	* Makefile: Improve hooks to make DOS makefile from Unix makefile.
697*7bdc2678Schristos	Switch to GNU diff as the default.  ${} -> $().
698*7bdc2678Schristos
699*7bdc2678Schristos	* rcstest: Add test for reverting checkin.  Ease DOS ports.
700*7bdc2678Schristos	Add PATH warning.
701*7bdc2678Schristos
702*7bdc2678SchristosSat Jun 22 22:43:23 1991  Paul Eggert  <eggert@twinsun.com>
703*7bdc2678Schristos
704*7bdc2678Schristos	* rcsclean.sh: Unlock the correct version.
705*7bdc2678Schristos
706*7bdc2678SchristosSun Apr 21 11:59:14 1991  Paul Eggert  <eggert@twinsun.com>
707*7bdc2678Schristos
708*7bdc2678Schristos	* ci.c, co.c, rcsbase.h, rcs.c, rcsdiff.c, rcsedit.c,
709*7bdc2678Schristos	rcsfnms.c, rcsmerge.c, rlog.c: Add -x, RCSINIT.
710*7bdc2678Schristos	* ci.c, co.c, conf.sh, Makefile, rcsbase.h, rcs.c, rcsdiff.c,
711*7bdc2678Schristos	rcsedit.c, rcsfcmp.c, rcsfnms.c, rcsgen.c, rcslex.c, rcsmerge.c,
712*7bdc2678Schristos	rcssyn.c, rlog.c: Add MS-DOS support.
713*7bdc2678Schristos	* ci.c, co.c: Ensure that working file is newer than RCS file
714*7bdc2678Schristos	after co -[lu].
715*7bdc2678Schristos
716*7bdc2678Schristos	* merge.c, merger.c: Initial revision
717*7bdc2678Schristos	* partime.c: Don't put , just before } in initializer.
718*7bdc2678Schristos	* rcsedit.c, rcsfcmp.c, rcsfnms.c, rcssyn.c: Fix errno bugs.
719*7bdc2678Schristos	* rcskeep.c, rcssyn.c: Disambiguate names on shortname hosts.
720*7bdc2678Schristos	* rcskeys.c, rcsmap.c: Don't put , just before } in initializer.
721*7bdc2678Schristos	* rcsrev.c: Add tiprev().
722*7bdc2678Schristos	* rcsutil.c: Plug setuid security hole.
723*7bdc2678Schristos	* conf.sh, conf.heg: Fix several reported bugs.
724*7bdc2678Schristos	* rcstest: Fix porting bugs.
725*7bdc2678Schristos	* rcsfreeze.sh: Port to broken shells.
726*7bdc2678Schristos
727*7bdc2678SchristosSun Mar 17 05:42:57 1991  Paul Eggert  <eggert@twinsun.com>
728*7bdc2678Schristos
729*7bdc2678Schristos	* rcsclean.sh: Support RCS file names.  Add -n.
730*7bdc2678Schristos
731*7bdc2678SchristosThu Feb 28 19:18:53 1991  Paul Eggert  <eggert@twinsun.com>
732*7bdc2678Schristos
733*7bdc2678Schristos	* ci.c: Don't let a setuid ci create a new RCS file;
734*7bdc2678Schristos	rcs -i -a must be run first.
735*7bdc2678Schristos	Fix ci -ko -l mode bug.  Open work file at most once.
736*7bdc2678Schristos
737*7bdc2678Schristos	* rcsbase.h, conf.sh, conf.heg: Try setuid() if seteuid() doesn't work.
738*7bdc2678Schristos
739*7bdc2678Schristos	* rcsfcmp.c: Open work file at most once.
740*7bdc2678Schristos
741*7bdc2678Schristos	* rcssyn.c: Fix null termination bug in reporting keyword expansion.
742*7bdc2678Schristos
743*7bdc2678Schristos	* rcsutil.c: Try setuid() if seteuid() doesn't work.
744*7bdc2678Schristos	Check the results more carefully.
745*7bdc2678Schristos
746*7bdc2678Schristos	* Makefile: Remove setuid installation -- it's now up to the users.
747*7bdc2678Schristos
748*7bdc2678SchristosTue Feb 26 17:48:39 1991  Paul Eggert  <eggert@twinsun.com>
749*7bdc2678Schristos
750*7bdc2678Schristos	* ci.c: getdate -> getcurdate (SVR4 name clash)
751*7bdc2678Schristos
752*7bdc2678Schristos	* ident.c: Don't report empty keywords.  Check for I/O errors.
753*7bdc2678Schristos
754*7bdc2678Schristos	* rcs.c: 0444 -> S_IRUSR|S_IRGRP|S_IROTH for portability
755*7bdc2678Schristos	* rcs.c, rlog.c, rcslex.c, rcsutil.c:
756*7bdc2678Schristos	strsave -> str_save (DG/UX name clash)
757*7bdc2678Schristos
758*7bdc2678Schristos	* rcsmerge.c: Merging a revision to itself is no longer an error.
759*7bdc2678Schristos
760*7bdc2678Schristos	* rlog.c: Survive RCS files with missing logs.
761*7bdc2678Schristos
762*7bdc2678Schristos	* rcsbase.h: Move ANSI C / Posix declarations into conf.sh.
763*7bdc2678Schristos	* rcsbase.h, rcsedit.c, rcsfnms.c: Support new link behavior.
764*7bdc2678Schristos
765*7bdc2678Schristos	* rcsedit.c: Work around broken "w+" fopen.
766*7bdc2678Schristos	* rcsedit.c, rcsfnms.c, rcsutil.c: Fix setuid bug.
767*7bdc2678Schristos
768*7bdc2678Schristos	* rcsfnms.c: Support tempnam.  Define more portable getcwd().
769*7bdc2678Schristos
770*7bdc2678Schristos	* rcslex.c: Work around fputs bug.
771*7bdc2678Schristos
772*7bdc2678Schristos	* rcsrev.c: Avoid overflow when comparing revision numbers.
773*7bdc2678Schristos
774*7bdc2678Schristos	* rcssyn.c: Check diff output more carefully; avoid overflow.
775*7bdc2678Schristos
776*7bdc2678Schristos	* rcsutil.c: Use fread, fwrite more portably.
777*7bdc2678Schristos	Support waitpid.  Don't assume -1 is acceptable to W* macros.
778*7bdc2678Schristos
779*7bdc2678Schristos	* Makefile: Remove setgid support.  Add NEW_LINK_BEHAVIOR.
780*7bdc2678Schristos
781*7bdc2678Schristos	* conf.sh: Revamp extensively for portability.
782*7bdc2678Schristos	* conf.heg: Adjust to latest conf.sh.
783*7bdc2678Schristos
784*7bdc2678Schristos	* rcstest: Work even if diff -c and diff3 -E don't.
785*7bdc2678Schristos	Improve handling of binary files and bad locks.
786*7bdc2678Schristos
787*7bdc2678SchristosMon Dec 31 01:00:12 1990  Paul Eggert  <eggert@twinsun.com>
788*7bdc2678Schristos
789*7bdc2678Schristos	Version 5.5 released.
790*7bdc2678Schristos	* ci.c: Don't use uninitialized storage when handling -{N,n}.
791*7bdc2678Schristos
792*7bdc2678SchristosSun Dec 30 05:07:35 1990  Paul Eggert  <eggert@twinsun.com>
793*7bdc2678Schristos
794*7bdc2678Schristos	* rcsedit.c:
795*7bdc2678Schristos	Fix report of busy RCS files when !defined(O_CREAT) | !defined(O_EXCL).
796*7bdc2678Schristos
797*7bdc2678SchristosThu Dec 27 19:54:26 1990  Paul Eggert  <eggert@twinsun.com>
798*7bdc2678Schristos
799*7bdc2678Schristos	* rcsgen.c: Fix bug: rcs -t inserted \n, making RCS file grow.
800*7bdc2678Schristos
801*7bdc2678SchristosTue Dec 18 17:19:21 1990  Paul Eggert  <eggert@twinsun.com>
802*7bdc2678Schristos
803*7bdc2678Schristos	* rcs.c: Fix bug with multiple -n and -N options.
804*7bdc2678Schristos
805*7bdc2678SchristosThu Dec 13 06:54:07 1990  Paul Eggert  <eggert@twinsun.com>
806*7bdc2678Schristos
807*7bdc2678Schristos	* rcsdiff.c, Makefile: GNU diff 1.15 has -u.
808*7bdc2678Schristos
809*7bdc2678SchristosTue Dec  4 05:18:49 1990  Paul Eggert  <eggert@twinsun.com>
810*7bdc2678Schristos
811*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsgen.c, rcslex.c, rcsutil.c:
812*7bdc2678Schristos	Use -I for prompts and -q for diagnostics.
813*7bdc2678Schristos
814*7bdc2678Schristos	* co.c: Don't checkaccesslist() unless necessary.
815*7bdc2678Schristos
816*7bdc2678Schristos	* rcsutil.c: Don't output a blank line after a signal diagnostic.
817*7bdc2678Schristos
818*7bdc2678SchristosTue Nov 27 09:26:05 1990  Paul Eggert  <eggert@twinsun.com>
819*7bdc2678Schristos
820*7bdc2678Schristos	* rcsfcmp.c: Fix comment leader bug.
821*7bdc2678Schristos
822*7bdc2678SchristosSun Nov 11 00:06:35 1990  Paul Eggert  <eggert@twinsun.com>
823*7bdc2678Schristos
824*7bdc2678Schristos	* rcs.c: Fix `rcs -e' core dump.
825*7bdc2678Schristos
826*7bdc2678SchristosMon Nov  5 20:30:10 1990  Paul Eggert  <eggert@twinsun.com>
827*7bdc2678Schristos
828*7bdc2678Schristos	* ci.c: Don't remove working file when aborting due to no changes.
829*7bdc2678Schristos
830*7bdc2678SchristosThu Nov  1 05:28:48 1990  Paul Eggert  <eggert@twinsun.com>
831*7bdc2678Schristos
832*7bdc2678Schristos	* ci.c, rcs.c: Add -I and new -t behavior.
833*7bdc2678Schristos	* ci.c, rcs.c, rcsbase.h, rcsedit.c, rcsgen.c, rcsfcmp.c, rcsfnms.c,
834*7bdc2678Schristos	rcssyn.c, rlog.c: Permit arbitrary data in logs and comment leaders.
835*7bdc2678Schristos
836*7bdc2678Schristos	* co.c: Fix -j.  Add -I.
837*7bdc2678Schristos
838*7bdc2678Schristos	* merge.sh: Yield exit status 2 on error like the man page says.
839*7bdc2678Schristos
840*7bdc2678Schristos	* rcsdiff.c, rcsmerge.c, rcsutil.c: Remove unneeded setid check.
841*7bdc2678Schristos
842*7bdc2678Schristos	* maketime.c: Remove lint.
843*7bdc2678Schristos
844*7bdc2678Schristos	* rcsbase.h: Don't assume that builtins are functions;
845*7bdc2678Schristos	they may be macros.
846*7bdc2678Schristos
847*7bdc2678Schristos	* rcsgen.c: Add -I and new -t behavior.
848*7bdc2678Schristos
849*7bdc2678Schristos	* rcslex.c, rcssyn.c:
850*7bdc2678Schristos	When ignoring unknown phrases, copy them to the output RCS file.
851*7bdc2678Schristos
852*7bdc2678Schristos	* rcssyn.c: Don't check for nontext on initial checkin.
853*7bdc2678Schristos
854*7bdc2678Schristos	* rcsutil.c: Add awrite(), fremember().
855*7bdc2678Schristos
856*7bdc2678Schristos	* Makefile: Add test and debug instructions.
857*7bdc2678Schristos	Remove unwieldy "make depend" stuff.
858*7bdc2678Schristos
859*7bdc2678Schristos	* conf.sh: Use better guess for Posix 1003.1-1990 seteuid() behavior.
860*7bdc2678Schristos	(A real test would requiring running conf.sh setid.  Ugh!)
861*7bdc2678Schristos	Use test for vfork() that detects GCC 1.37.1+sparc and IRIX bugs.
862*7bdc2678Schristos	Use better test for const and volatile.
863*7bdc2678Schristos	User better test for include files; just running cpp isn't enough,
864*7bdc2678Schristos	because the include files may be buggy.
865*7bdc2678Schristos	Don't assume that builtins are functions; they may be macros.
866*7bdc2678Schristos	Remove DIFF_ARBITRARY.
867*7bdc2678Schristos	* conf.heg: Initial revision
868*7bdc2678Schristos
869*7bdc2678Schristos	* rcsclean.sh: Basically a complete rewrite.  Add rcsdiff options.
870*7bdc2678Schristos	Clean working directory if no arguments are given.
871*7bdc2678Schristos
872*7bdc2678Schristos	* rcsfreeze.sh: Check for errors better.
873*7bdc2678Schristos	Remove the need for one of the temporary files.
874*7bdc2678Schristos
875*7bdc2678SchristosSat Oct  6 00:16:45 1990  Paul Eggert  <eggert@twinsun.com>
876*7bdc2678Schristos
877*7bdc2678Schristos	* rcsutil.c: Don't fread F if feof(F).
878*7bdc2678Schristos
879*7bdc2678SchristosThu Oct  4 06:30:22 1990  Paul Eggert  <eggert@twinsun.com>
880*7bdc2678Schristos
881*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsdiff.c, rlog.c:
882*7bdc2678Schristos	Accumulate exit status across files.
883*7bdc2678Schristos
884*7bdc2678Schristos	* maketime.c: Don't assume time_t is 32 bits.
885*7bdc2678Schristos	Calculate the GMT offset of 'xxx LT' as of xxx, not as of now.
886*7bdc2678Schristos	Fix bugs near epoch and near end of time.
887*7bdc2678Schristos
888*7bdc2678Schristos	* partime.c: Check for overflow when lexing an integer.
889*7bdc2678Schristos	Remove date vs time heuristics that fail between 2000 and 2400.
890*7bdc2678Schristos	Parse 'Jan 10 LT' as 'Jan 10, LT', not 'Jan, 10 LT'.
891*7bdc2678Schristos
892*7bdc2678Schristos	* rcskeep.c: Parse time zone offsets;
893*7bdc2678Schristos	future RCS versions may output them.
894*7bdc2678Schristos
895*7bdc2678SchristosThu Sep 27 01:31:43 1990  Paul Eggert  <eggert@twinsun.com>
896*7bdc2678Schristos
897*7bdc2678Schristos	* rcsdiff.c: Yield 1, not EXIT_FAILURE, when diffs are found.
898*7bdc2678Schristos	* rcsbase.h, conf.sh: Port wait() to non-Posix ANSI C hosts.
899*7bdc2678Schristos	* conf.sh: Test for vfork() file descriptor screwup.
900*7bdc2678Schristos
901*7bdc2678SchristosTue Sep 25 20:11:46 1990  Adam Hammer  <hammer@cs.purdue.edu>
902*7bdc2678Schristos
903*7bdc2678Schristos	* ci.c: fixed another small typo
904*7bdc2678Schristos
905*7bdc2678SchristosMon Sep 24 18:56:31 1990  Paul Eggert  <eggert@twinsun.com>
906*7bdc2678Schristos
907*7bdc2678Schristos	* partime.c: Update time zones.
908*7bdc2678Schristos
909*7bdc2678SchristosFri Sep 21 06:16:38 1990  Adam Hammer  <hammer@cs.purdue.edu>
910*7bdc2678Schristos
911*7bdc2678Schristos	* ci.c: made it handle multiple -{N,n}'s.
912*7bdc2678Schristos	Also, made it treat re-directed stdin the same as the terminal
913*7bdc2678Schristos
914*7bdc2678SchristosThu Sep 20 07:58:32 1990  Paul Eggert  <eggert@twinsun.com>
915*7bdc2678Schristos
916*7bdc2678Schristos	* ci.c: ci -k now checks dates more thoroughly.
917*7bdc2678Schristos
918*7bdc2678Schristos	* merge.sh: Fix bug in passing arguments to old diff3 programs.
919*7bdc2678Schristos	Fix calculation of #!/bin/sh header.
920*7bdc2678Schristos
921*7bdc2678Schristos	* rcskeep.c: ci -k now checks dates more thoroughly.
922*7bdc2678Schristos
923*7bdc2678Schristos	* rcssyn.c:
924*7bdc2678Schristos	Remove the test for non-text bytes; it caused more pain than it cured.
925*7bdc2678Schristos
926*7bdc2678Schristos	* conf.sh: Calculate signal_type more reliably on older systems.
927*7bdc2678Schristos
928*7bdc2678Schristos	* rcstest: Adjust to old and brain damaged diffs.
929*7bdc2678Schristos
930*7bdc2678SchristosSat Sep 15 01:29:51 1990  Paul Eggert  <eggert@twinsun.com>
931*7bdc2678Schristos
932*7bdc2678Schristos	* conf.sh: Output header warning that it's generated automatically.
933*7bdc2678Schristos
934*7bdc2678SchristosTue Sep 11 02:41:16 1990  Paul Eggert  <eggert@twinsun.com>
935*7bdc2678Schristos
936*7bdc2678Schristos	* ci.c: Fix revision bug with `ci -k file1 file2'.
937*7bdc2678Schristos	* co.c: co -kv yields a readonly working file.
938*7bdc2678Schristos	* rcsdiff.c: Simplify -kkvl test.
939*7bdc2678Schristos	* rlog.c: Plug memory leak.
940*7bdc2678Schristos	* rcsedit.c: Tune expandline().
941*7bdc2678Schristos	* rcsfcmp.c: Don't ignore differences in keyword strings if -ko is set.
942*7bdc2678Schristos	* Makefile: Don't make -R the default.
943*7bdc2678Schristos
944*7bdc2678SchristosTue Sep  4 17:07:19 1990  Paul Eggert  <eggert@twinsun.com>
945*7bdc2678Schristos
946*7bdc2678Schristos	* ci.c: Permit adjacent revisions with identical time stamps
947*7bdc2678Schristos	(possible on fast hosts).
948*7bdc2678Schristos	* ci.c, rcsbase.h, rcsedit.c: Improve incomplete line handling.
949*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsgen.c:
950*7bdc2678Schristos	Standardize yes-or-no procedure.
951*7bdc2678Schristos
952*7bdc2678Schristos	* rcsdiff.c: Diff's argv was too small by 1.
953*7bdc2678Schristos
954*7bdc2678Schristos	* rlog.c, rcsedit.c, rcslex.c, rcssyn.c: Count RCS lines better.
955*7bdc2678Schristos
956*7bdc2678Schristos	* rcsmerge.c: Check for I/O error when reading working file.
957*7bdc2678Schristos
958*7bdc2678Schristos	* partime.c: Don't permit 'Aug Aug'.
959*7bdc2678Schristos	Don't parse two-digit years, because it won't work after 1999/12/31.
960*7bdc2678Schristos
961*7bdc2678Schristos	* rcsbase.h: Don't redefine NAME_MAX, PATH_MAX.
962*7bdc2678Schristos
963*7bdc2678Schristos	* rcsfnms.c: Fix typo when !RCSSEP.
964*7bdc2678Schristos
965*7bdc2678Schristos	* rcsgen.c: Fix `co -p1.1 -ko' bug.
966*7bdc2678Schristos
967*7bdc2678Schristos	* rcssyn.c: Parse RCS files with no revisions.
968*7bdc2678Schristos	Don't strip leading white space from diff commands.
969*7bdc2678Schristos
970*7bdc2678Schristos	* rcsutil.c: Store fread()'s result in an fread_type object.
971*7bdc2678Schristos
972*7bdc2678Schristos	* conf.sh: Don't include <stdarg.h> unless has_prototypes is set.
973*7bdc2678Schristos
974*7bdc2678Schristos	* rcstest: Test -kkv, etc.
975*7bdc2678Schristos	Work even when today's day of the month is less than 10.
976*7bdc2678Schristos
977*7bdc2678SchristosWed Aug 29 07:14:52 1990  Paul Eggert  <eggert@twinsun.com>
978*7bdc2678Schristos
979*7bdc2678Schristos	* ci.c: Expand locker value like co.
980*7bdc2678Schristos	* ci.c, rcs.c, rcsbase.h, rcsfcmp.c, rcsgen.c, rcssyn.c:
981*7bdc2678Schristos	Clean old log messages too.
982*7bdc2678Schristos
983*7bdc2678Schristos	* merge.sh: Add -q.
984*7bdc2678Schristos
985*7bdc2678Schristos	* rcs.c: Remove unused setuid support.
986*7bdc2678Schristos
987*7bdc2678Schristos	* rcsdiff.c, rcsbase.h rcsedit.c, rcssyn.c: Add -kkvl.
988*7bdc2678Schristos
989*7bdc2678Schristos	* rcsmerge.c: Add -q.  Pass -L options to merge.
990*7bdc2678Schristos
991*7bdc2678Schristos	* partime.c: Be able to parse our own date format.
992*7bdc2678Schristos	Don't assume year<10000.
993*7bdc2678Schristos
994*7bdc2678Schristos	* rcsbase.h: Fix type typos exposed by porting.
995*7bdc2678Schristos
996*7bdc2678Schristos	* rcsedit.c:
997*7bdc2678Schristos	Fix bug when getting revisions to files ending in incomplete lines.
998*7bdc2678Schristos	Fix bug in comment leader expansion.
999*7bdc2678Schristos
1000*7bdc2678Schristos	* rcsfnms.c, rcslex.c:
1001*7bdc2678Schristos	Work around buggy compilers with defective argument promotion.
1002*7bdc2678Schristos
1003*7bdc2678Schristos	* rcsutil.c: Declare getpwuid() more carefully.
1004*7bdc2678Schristos
1005*7bdc2678Schristos	* Makefile: Remove -g from default CFLAGS.
1006*7bdc2678Schristos
1007*7bdc2678Schristos	* conf.sh: Fix porting bugs.  Add sanity checks and better doc strings.
1008*7bdc2678Schristos
1009*7bdc2678Schristos	* rcstest: Initial revision
1010*7bdc2678Schristos
1011*7bdc2678SchristosWed Aug 22 08:49:14 1990  Paul Eggert  <eggert@twinsun.com>
1012*7bdc2678Schristos
1013*7bdc2678Schristos	* ci.c: Don't pass +args to diff.
1014*7bdc2678Schristos	* ci.c, co.c, rcsbase.h, rcsdiff.c, rcsedit.c, rcskeys.c, rcssyn.c:
1015*7bdc2678Schristos	Add -k.
1016*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsdiff.c, rcsedit.c, rcsmerge.c,
1017*7bdc2678Schristos	rcsutil.c, rlog.c: Add -V.
1018*7bdc2678Schristos	* ci.c, co.c, ident.c, rcs.c, rcsbase.h, rcsdiff.c, rcsedit.c,
1019*7bdc2678Schristos	rcsfnms.c, rcsgen.c, rcskeep.c, rcslex.c, rcsmerge.c, rcsrev.c,
1020*7bdc2678Schristos	rcssyn.c, rcsutil.c, rlog.c:
1021*7bdc2678Schristos	Remove compile-time limits; use malloc instead.
1022*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsbase.h, rcsdiff.c, rcsutil.c, rlog.c:
1023*7bdc2678Schristos	Add setuid support.
1024*7bdc2678Schristos	* ci.c, rcsedit.c, rcskeep.c, rcssyn.c: Don't require a final newline.
1025*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsdiff.c, rcsedit.c, rcsfnms.c, rcsmerge.c:
1026*7bdc2678Schristos	Make lock and temp files faster and safer.
1027*7bdc2678Schristos	* ci.c, co.c, maketime.c, rcs.c, rcsedit.c, rcsfnms.c, rcskeep.c,
1028*7bdc2678Schristos	rcsutil.c: Permit dates past 1999/12/31.
1029*7bdc2678Schristos	* ci.c, co.c, rlog.c, maketime.c, partime.c, rcsutil.c, Makefile:
1030*7bdc2678Schristos	Switch to GMT and fixed the bugs exposed thereby.
1031*7bdc2678Schristos	* ci.c, rcs.c, rcsedit.c, rcssyn.c: Check diff's output.
1032*7bdc2678Schristos	* ci.c, co.c, rcsbase.h, rcsutil.c: Remove snooping.
1033*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsfnms.c, rcskeep.c, rcsmerge.c, rcsrev.c,
1034*7bdc2678Schristos	rcssyn.c, rcsutil.c: Tune.
1035*7bdc2678Schristos	* ci.c, co.c, ident.c, maketime.c, partime.c, rcs.c, rcsbase.h,
1036*7bdc2678Schristos	rcsdiff.c, rcsedit.c, rcsfcmp.c, rcsfnms.c, rcsgen.c, rcskeep.c,
1037*7bdc2678Schristos	rcskeys.c, rcslex.c, rcsmerge.c, rcsrev.c, rcssyn.c, rcsutil.c, rlog.c:
1038*7bdc2678Schristos	Ansify and Posixate.
1039*7bdc2678Schristos
1040*7bdc2678Schristos	* co.c, rcsutil.c: Permit multiple locks by same user.
1041*7bdc2678Schristos
1042*7bdc2678Schristos	* ident.c: Don't limit output to known keywords.
1043*7bdc2678Schristos	* ident.c, rcs.c, rcsfcmp.c, rcsrev.c, rcssyn.c: Remove lint.
1044*7bdc2678Schristos
1045*7bdc2678Schristos	* merge.sh: Become a shell file that outputs the needed shell file.
1046*7bdc2678Schristos	Support GNU diff3.  Add -L.
1047*7bdc2678Schristos
1048*7bdc2678Schristos	* rcs.c: Don't lose names when applying -a option to multiple files.
1049*7bdc2678Schristos	Fix umask bug.  Yield proper exit status.
1050*7bdc2678Schristos
1051*7bdc2678Schristos	* rcsdiff.c: Don't pass arguments with leading '+' to diff;
1052*7bdc2678Schristos	GNU DIFF treats them as options.  Add GNU diff's flags.
1053*7bdc2678Schristos	* rcsdiff.c, rcsbase.h, rcsmerge.c, rcsfnms.c: Don't use access().
1054*7bdc2678Schristos
1055*7bdc2678Schristos	* rcsmerge.c: Propagate merge's exit status.
1056*7bdc2678Schristos
1057*7bdc2678Schristos	* rlog.c:
1058*7bdc2678Schristos	Report dates in long form, to warn about dates past 1999/12/31.
1059*7bdc2678Schristos	Change "added/del" message to make room for the longer dates.
1060*7bdc2678Schristos	* rlog.c, rcsedit.c: Don't generate trailing white space.
1061*7bdc2678Schristos
1062*7bdc2678Schristos	* partime.c: Update time zones.  Fix peekahead and int-size bugs.
1063*7bdc2678Schristos
1064*7bdc2678Schristos	* rcsbase.h: Adjust ANSI C / Posix support.  Remove v2 support.
1065*7bdc2678Schristos	* rcsbase.h, rcslex.c, rcssyn.c: Add support for ISO 8859.
1066*7bdc2678Schristos
1067*7bdc2678Schristos	* rcsedit.c, rcsfcmp.c: Don't append "checked in with -k by " log to
1068*7bdc2678Schristos	logs, so that checking in a program with -k doesn't change it.
1069*7bdc2678Schristos
1070*7bdc2678Schristos	* rcsfnms.c: Ignore signals when manipulating the semaphore file.
1071*7bdc2678Schristos	Modernize list of file name extensions.
1072*7bdc2678Schristos	Beware file names beginning with "-".
1073*7bdc2678Schristos	Fix test for non-regular files.
1074*7bdc2678Schristos
1075*7bdc2678Schristos	* rcskeep.c: Retrieve old log message if there is one.
1076*7bdc2678Schristos
1077*7bdc2678Schristos	* rcslex.c: Report errno-related errors with perror().
1078*7bdc2678Schristos	Use better hash function.
1079*7bdc2678Schristos
1080*7bdc2678Schristos	* rcsrev.c: Remove possibility of an internal error.
1081*7bdc2678Schristos
1082*7bdc2678Schristos	* rcssyn.c: Try to parse future RCS formats without barfing.
1083*7bdc2678Schristos	Don't output branch keyword if there's no default branch,
1084*7bdc2678Schristos	because RCS version 3 doesn't understand it.
1085*7bdc2678Schristos	Check that a newly checked-in file is acceptable as input to 'diff'.
1086*7bdc2678Schristos
1087*7bdc2678Schristos	* rcsutil.c: Some USG hosts define NSIG but not sys_siglist.
1088*7bdc2678Schristos	Don't run /bin/sh if it's hopeless.
1089*7bdc2678Schristos	Don't leave garbage behind if the output is an empty pipe.
1090*7bdc2678Schristos	Clean up after SIGXCPU or SIGXFSZ.
1091*7bdc2678Schristos	Print name of signal that caused cleanup.
1092*7bdc2678Schristos
1093*7bdc2678Schristos	* Makefile: Configure more automatically.  Upgrade for RCS 5.0.
1094*7bdc2678Schristos
1095*7bdc2678Schristos	* conf.sh, rcsmap.c: Initial revision
1096*7bdc2678Schristos
1097*7bdc2678SchristosWed May 23 06:54:32 1990  Paul Eggert  <eggert@twinsun.com>
1098*7bdc2678Schristos
1099*7bdc2678Schristos	* Makefile: Make Posix the default; it's the wave of the future.
1100*7bdc2678Schristos	Add advice for SunOS.  Remove references to rcsclean, rcsfreeze.
1101*7bdc2678Schristos
1102*7bdc2678SchristosThu Mar 22 07:06:14 1990  Paul Eggert  <eggert@twinsun.com>
1103*7bdc2678Schristos
1104*7bdc2678Schristos	* merge.sh: Add support for GNU DIFF 1.15.
1105*7bdc2678Schristos
1106*7bdc2678Schristos	* Makefile: Permit dates past 1999/12/31.  Ansify and Posixate.
1107*7bdc2678Schristos	Remove snoop and v2 support.  Add <vfork.h> flag.
1108*7bdc2678Schristos
1109*7bdc2678SchristosSat Nov 18 13:34:16 1989  Adam Hammer  <hammer@cs.purdue.edu>
1110*7bdc2678Schristos
1111*7bdc2678Schristos	Version 4.3 released.
1112*7bdc2678Schristos
1113*7bdc2678SchristosMon Oct 30 12:29:00 1989  Daniel Trinkle  <trinkle@cs.purdue.edu>
1114*7bdc2678Schristos
1115*7bdc2678Schristos	* rcsclean.c:
1116*7bdc2678Schristos	Added -q option to agree with man page, added code to actually unlock
1117*7bdc2678Schristos	the RCS file if there were no differences, picked a bit of lint.
1118*7bdc2678Schristos
1119*7bdc2678SchristosWed Jun 28 12:56:23 1989  Paul Eggert  <eggert@twinsun.com>
1120*7bdc2678Schristos
1121*7bdc2678Schristos	* rcsfnms.c:
1122*7bdc2678Schristos	Prevent checkin of all non-regular files, not just directories.
1123*7bdc2678Schristos
1124*7bdc2678SchristosWed Jun 28 09:02:14 1989  Thomas Narten  <narten@cs.purdue.edu>
1125*7bdc2678Schristos
1126*7bdc2678Schristos	Version 4.2 released.
1127*7bdc2678Schristos
1128*7bdc2678SchristosMon May  1 15:17:14 1989  Thomas Narten  <narten@cs.purdue.edu>
1129*7bdc2678Schristos
1130*7bdc2678Schristos	changed copyright header to reflect current distribution rules
1131*7bdc2678Schristos
1132*7bdc2678Schristos	* rcsbase.h: changed #include <strings.h> -> string.h for USG systems.
1133*7bdc2678Schristos	* partime.c: fixed #ifdef DEBUG construct
1134*7bdc2678Schristos	* rcsfnms.c: changed getwd to not stat empty directories.
1135*7bdc2678Schristos
1136*7bdc2678SchristosThu Dec  8 14:02:20 1988  Paul Eggert  <eggert@sm.unisys.com>
1137*7bdc2678Schristos
1138*7bdc2678Schristos	* rcsfnms.c:
1139*7bdc2678Schristos	Fix bug: "co -p .../RCS/dir,v" failed if ./dir is a directory.
1140*7bdc2678Schristos
1141*7bdc2678SchristosTue Nov  8 16:01:02 1988  Thomas Narten  <narten@cs.purdue.edu>
1142*7bdc2678Schristos
1143*7bdc2678Schristos	* ci.c: changes from root@seismo.CSS.GOV (Super User)
1144*7bdc2678Schristos	-d with no arguments uses the mod time of the file it is checking in
1145*7bdc2678Schristos
1146*7bdc2678Schristos	* rcs.c: removed include <sysexits.h> (not needed)
1147*7bdc2678Schristos	minor fix for -A option
1148*7bdc2678Schristos
1149*7bdc2678Schristos	* rcsbase.h: removed defs for functions loaded from libraries
1150*7bdc2678Schristos	* maketime.c: allow negative time zones (-24h <= x <= 24h)
1151*7bdc2678Schristos	* rcsedit.c: misplaced semicolon caused infinite loop
1152*7bdc2678Schristos	* rcsutil.c: corrected use of varargs routines
1153*7bdc2678Schristos
1154*7bdc2678SchristosSun Aug 28 15:09:38 1988  Paul Eggert  <eggert@sm.unisys.com>
1155*7bdc2678Schristos
1156*7bdc2678Schristos	* Makefile: 'make depend' now discards /usr/include/*
1157*7bdc2678Schristos	(#ifdefs may comment around them).
1158*7bdc2678Schristos	Use sed rather than ex for portability.  Remove obsolete comments.
1159*7bdc2678Schristos	Separate LINTFLAGS.  Use LDFLAGS consistently.
1160*7bdc2678Schristos	Edit DIFF in merge.sh.  Use execv(), not system(); allow cc -R.
1161*7bdc2678Schristos	Permit signal handlers to yield either 'void' or 'int'.
1162*7bdc2678Schristos
1163*7bdc2678Schristos	* rcslex.c:
1164*7bdc2678Schristos	Don't loop when writing error messages to a full filesystem.
1165*7bdc2678Schristos	Flush stderr/stdout when mixing output.
1166*7bdc2678Schristos	Yield exit status compatible with diff(1).
1167*7bdc2678Schristos	Shrink stdio code size; allow cc -R; remove lint.
1168*7bdc2678Schristos
1169*7bdc2678Schristos	* rcsgen.c: Shrink stdio code size; allow cc -R; remove lint;
1170*7bdc2678Schristos	isatty() -> ttystdin()
1171*7bdc2678Schristos
1172*7bdc2678Schristos	* partime.c: Remove unportable "#endif XXX"s.
1173*7bdc2678Schristos
1174*7bdc2678Schristos	* maketime.c: Allow cc -R.  Remove unportable "#endif XXX"s.
1175*7bdc2678Schristos
1176*7bdc2678SchristosTue Aug  9 19:13:28 1988  Paul Eggert  <eggert@sm.unisys.com>
1177*7bdc2678Schristos
1178*7bdc2678Schristos	* ci.c: Remove lint.
1179*7bdc2678Schristos	isatty(fileno(stdin)) -> ttystdin()
1180*7bdc2678Schristos	Make sure workfile is a regular file;
1181*7bdc2678Schristos	use its mode if RCSfile doesn't have one.
1182*7bdc2678Schristos	* ci.c, rcsdiff.c, rcsedit.c: Allow cc -R.
1183*7bdc2678Schristos
1184*7bdc2678Schristos	* co.c: Fix "co -d" core dump; rawdate wasn't always initialized.
1185*7bdc2678Schristos	fix putchar('\0') and diagnose() botches.
1186*7bdc2678Schristos	* co.c, rcs.c, rcsbase.h, rcskeep.c, rcssyn.c, rlog.c: Remove lint.
1187*7bdc2678Schristos
1188*7bdc2678Schristos	* merge.sh:
1189*7bdc2678Schristos	Check and yield proper exit status; keep temporary files private;
1190*7bdc2678Schristos	economize to avoid a temporary file; fix "1 overlaps";
1191*7bdc2678Schristos	keep '.' out of PATH.
1192*7bdc2678Schristos
1193*7bdc2678Schristos	* rcsdiff.c, rcsmerge.c: Yield exit status like diff(1)'s.
1194*7bdc2678Schristos
1195*7bdc2678Schristos	* rcsmerge.c: Beware merging into a readonly file.
1196*7bdc2678Schristos	Beware merging a revision to itself (no change).
1197*7bdc2678Schristos
1198*7bdc2678Schristos	* rcs.c: Don't access freed storage.
1199*7bdc2678Schristos	Yield proper exit status.
1200*7bdc2678Schristos
1201*7bdc2678Schristos	* rlog.c: Check for memory exhaustion; don't access freed storage.
1202*7bdc2678Schristos	Shrink stdio code size.
1203*7bdc2678Schristos	* rlog.c, rcsutil.c: Check for memory exhaustion.
1204*7bdc2678Schristos
1205*7bdc2678Schristos	* rcsbase.h: Permit -Dhshsize=nn.
1206*7bdc2678Schristos	* rcsbase.h, rcsedit.c, rcsfcmp.c: Shrink stdio code size.
1207*7bdc2678Schristos
1208*7bdc2678Schristos	* rcskeep.c: Speed up by making FILE *fp local, not global.
1209*7bdc2678Schristos
1210*7bdc2678Schristos	* rcsutil.c:  Permit signal handlers to yield either 'void' or
1211*7bdc2678Schristos	'int'; fix oldSIGINT botch.  Yield exit status like diff(1)'s.
1212*7bdc2678Schristos
1213*7bdc2678SchristosWed Jul 27 00:31:11 1988  Paul Eggert  <eggert@sm.unisys.com>
1214*7bdc2678Schristos
1215*7bdc2678Schristos	* merge.sh: RCS version 4
1216*7bdc2678Schristos
1217*7bdc2678SchristosThu Jun 23 16:06:55 1988  Paul Eggert  <eggert@sm.unisys.com>
1218*7bdc2678Schristos
1219*7bdc2678Schristos	* sig_t.sh: Initial revision
1220*7bdc2678Schristos
1221*7bdc2678SchristosFri Dec 18 17:06:41 1987  Thomas Narten  <narten@cs.purdue.edu>
1222*7bdc2678Schristos
1223*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsfcmp.c, rcskeep.c, rcssyn.c, rlog.c:
1224*7bdc2678Schristos	lint cleanups (from Guy Harris)
1225*7bdc2678Schristos
1226*7bdc2678Schristos	* rcsdiff.c:  changes Jay Lepreau made in the 4.3 BSD version,
1227*7bdc2678Schristos	to add support for "-i", "-w", and "-t" flags and to permit
1228*7bdc2678Schristos	flags to be bundled together, merged in.
1229*7bdc2678Schristos
1230*7bdc2678Schristos	* maketime.c: include rcsparam.h
1231*7bdc2678Schristos
1232*7bdc2678Schristos	* rcsbase.h: made removed BSD ifdef, now uses V4_2BSD
1233*7bdc2678Schristos
1234*7bdc2678Schristos	* rcsedit.c:
1235*7bdc2678Schristos	Changes from the 43. version. Don't know the significance of the
1236*7bdc2678Schristos	first change involving "rewind". Also, additional "lint" cleanup.
1237*7bdc2678Schristos	(Guy Harris)
1238*7bdc2678Schristos
1239*7bdc2678Schristos	* rcsfnms.c:
1240*7bdc2678Schristos	additional file types added from 4.3 BSD version, and SPARC assembler
1241*7bdc2678Schristos	comment character added. Also, more lint cleanups. (Guy Harris)
1242*7bdc2678Schristos
1243*7bdc2678Schristos	* rcsgen.c:
1244*7bdc2678Schristos	additional lint cleanups, and a bug fix from the 4.3BSD version that
1245*7bdc2678Schristos	keeps "ci" from sticking a '\377' into the description if you run it
1246*7bdc2678Schristos	with a zero-length file as the description. (Guy Harris)
1247*7bdc2678Schristos
1248*7bdc2678Schristos	* rcslex.c: fixed to use "varargs" in "fprintf";
1249*7bdc2678Schristos	this is required if it is to work on a SPARC machine such as a Sun-4
1250*7bdc2678Schristos
1251*7bdc2678Schristos	* rcsrev.c: more lint cleanups.
1252*7bdc2678Schristos	Also, the NOTREACHED comment is no longer necessary,
1253*7bdc2678Schristos	since there's now a return value there with a value. (Guy Harris)
1254*7bdc2678Schristos
1255*7bdc2678Schristos	* Makefile: RCS version 4.0's Makefile
1256*7bdc2678Schristos
1257*7bdc2678Schristos	* rcsfreeze.sh: Initial revision
1258*7bdc2678Schristos
1259*7bdc2678SchristosMon Nov 23 16:06:50 1987  Paul Eggert  <eggert@sm.unisys.com>
1260*7bdc2678Schristos
1261*7bdc2678Schristos	* Makefile: Permit signal handlers to yield either 'void' or 'int'.
1262*7bdc2678Schristos
1263*7bdc2678SchristosFri Oct 23 17:09:57 1987  Thomas Narten  <narten@cs.purdue.edu>
1264*7bdc2678Schristos
1265*7bdc2678Schristos	* ident.c: added exit(0) so exit return code would be non random
1266*7bdc2678Schristos
1267*7bdc2678SchristosTue Sep 15 16:39:39 1987  Roy Morris  <...!felix!roy>
1268*7bdc2678Schristos
1269*7bdc2678Schristos	* rcsedit.c: added an initialization of the variables editline and
1270*7bdc2678Schristos	linecorr; this will be done each time a file is processed.
1271*7bdc2678Schristos	(there was an obscure bug where if co was used to retrieve multiple
1272*7bdc2678Schristos	files it would dump)
1273*7bdc2678Schristos
1274*7bdc2678SchristosSun Oct 18 10:40:22 1987  Thomas Narten  <narten@cs.purdue.edu>
1275*7bdc2678Schristos
1276*7bdc2678Schristos	Updating version numbers.
1277*7bdc2678Schristos	Changes relative to revision 1.1 are actually relative to 4.x.
1278*7bdc2678Schristos
1279*7bdc2678SchristosMon Aug 24 13:57:19 1987  Thomas Narten  <narten@cs.purdue.edu>
1280*7bdc2678Schristos
1281*7bdc2678Schristos	Sources now pass through lint
1282*7bdc2678Schristos	(if you ignore printf/sprintf/fprintf warnings).
1283*7bdc2678Schristos
1284*7bdc2678SchristosMon Aug 10 11:52:53 1987  Paul Eggert  <eggert@sm.unisys.com>
1285*7bdc2678Schristos
1286*7bdc2678Schristos	* co.c: 'co -d' dumped core; this fixes it.
1287*7bdc2678Schristos
1288*7bdc2678SchristosThu Jul  9 09:20:52 1987  Daniel Trinkle  <trinkle@cs.purdue.edu>
1289*7bdc2678Schristos
1290*7bdc2678Schristos	* ident.c: Added check to make sure there is at least one arg
1291*7bdc2678Schristos	before comparing argv[1] with "-q".  This necessary on machines
1292*7bdc2678Schristos	that don't allow dereferencing null pointers (i.e. Suns).
1293*7bdc2678Schristos
1294*7bdc2678SchristosMon Jun 22 13:52:35 1987  Paul Eggert  <eggert@sm.unisys.com>
1295*7bdc2678Schristos
1296*7bdc2678Schristos	* Makefile:
1297*7bdc2678Schristos	Allow cc -R; add rclm; add $(LDFLAGS) when linking anything
1298*7bdc2678Schristos
1299*7bdc2678Schristos	* rcs.c, rlog.c: Don't access freed storage.
1300*7bdc2678Schristos
1301*7bdc2678Schristos	* rcs.c: If you lack locks, "rcs -u" now breaks the newest lock
1302*7bdc2678Schristos	regardless of owner.
1303*7bdc2678Schristos
1304*7bdc2678SchristosFri Mar 27 14:21:53 1987  jenkins  <jenkins@cs.purdue.edu>
1305*7bdc2678Schristos
1306*7bdc2678Schristos	Port to suns
1307*7bdc2678Schristos
1308*7bdc2678SchristosMon Mar 23 12:01:04 1987  Paul Eggert  <eggert@sm.unisys.com>
1309*7bdc2678Schristos
1310*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsdiff.c, rcsmerge.c, rcsutil.c:
1311*7bdc2678Schristos	Use execv(), not system(); yield proper exit status.
1312*7bdc2678Schristos	* co.c: fix putchar('\0') and diagnose() botches.
1313*7bdc2678Schristos	* rcsutil.c: Fix bug: catchints() didn't work if ignoreints()
1314*7bdc2678Schristos	had already been called.
1315*7bdc2678Schristos	* rcsmerge.c: Beware merging into a readonly file.
1316*7bdc2678Schristos	Beware merging a revision to itself (no change).
1317*7bdc2678Schristos	* rcsbase.h: Shrink stdio code size; remove lint; vfork=fork on USG
1318*7bdc2678Schristos	* merge.sh:
1319*7bdc2678Schristos	Check and yield proper exit status; clean up if interrupted;
1320*7bdc2678Schristos	keep temporary files private; fix "1 overlaps" message.
1321*7bdc2678Schristos	* ci.c, rcsdiff.c: Allow cc -R.
1322*7bdc2678Schristos	* co.c, rcs.c: Remove lint.
1323*7bdc2678Schristos
1324*7bdc2678SchristosTue Mar 17 17:27:32 1987  loverso  <loverso@cs.purdue.edu>
1325*7bdc2678Schristos
1326*7bdc2678Schristos	* ci.c: Don't allow non-regular files (directories, etc)
1327*7bdc2678Schristos	to be checked in.
1328*7bdc2678Schristos
1329*7bdc2678SchristosMon Mar  9 17:11:52 1987  Paul Eggert  <eggert@sm.unisys.com>
1330*7bdc2678Schristos
1331*7bdc2678Schristos	* rcsedit.c: Shrink stdio code size; allow cc -R.
1332*7bdc2678Schristos	Fix linecorr botch: dumped core on Suns sometimes on 'co -rold f1 f2'.
1333*7bdc2678Schristos
1334*7bdc2678SchristosFri Feb 13 11:28:51 1987  Paul Eggert  <eggert@sm.unisys.com>
1335*7bdc2678Schristos
1336*7bdc2678Schristos	* rlog.c: Add -W flag.
1337*7bdc2678Schristos	* rcslex.c: Don't loop when writing error messages to a full filesystem
1338*7bdc2678Schristos	Flush stderr/stdout when mixing output.
1339*7bdc2678Schristos	Yield exit status compatible with diff(1).
1340*7bdc2678Schristos	* rcsgen.c, rcslex.c, rlog.c: Allow cc -R; remove lint.
1341*7bdc2678Schristos	* rcsfcmp.c, rcsgen.c, rcslex.c, rlog.c: Shrink stdio code size.
1342*7bdc2678Schristos
1343*7bdc2678SchristosThu Feb 12 18:24:19 1987  Paul Eggert  <eggert@sm.unisys.com>
1344*7bdc2678Schristos
1345*7bdc2678Schristos	* ident.c: Add -efghi flags.
1346*7bdc2678Schristos	* maketime.c, rcsfnms.c, rcssyn.c, sccstorcs.c: Allow cc -R.
1347*7bdc2678Schristos	* rcsfnms.c: Fix troff macro comment leader bug; add Prolog.
1348*7bdc2678Schristos	* rcskeep.c: Speed up by making FILE *fp local, not global.
1349*7bdc2678Schristos	* rcsrev.c, All files above: Remove lint.
1350*7bdc2678Schristos
1351*7bdc2678SchristosTue Jul 29 12:17:25 1986  Guy Harris  <guy@sun.com>
1352*7bdc2678Schristos
1353*7bdc2678Schristos	* maketime.c: More "lint" cleanups.
1354*7bdc2678Schristos
1355*7bdc2678SchristosMon Jul 28 23:34:14 1986  Guy Harris  <guy@sun.com>
1356*7bdc2678Schristos
1357*7bdc2678Schristos	* Makefile: Netnews fixes from guy@sun
1358*7bdc2678Schristos	* sccstorcs.c, rlog.c, rcsutil.c, rcssyn.c, rcsrev.c, rcsmerge.c,
1359*7bdc2678Schristos	rcslex.c, rcskeep.c, rcsgen.c, rcsfnms.c, rcsfcmp.c, rcsedit.c,
1360*7bdc2678Schristos	rcsdiff.c, rcsbase.h, rcs.c, ident.c, co.c, ci.c: More "lint" cleanups.
1361*7bdc2678Schristos
1362*7bdc2678SchristosThu Jul  3 13:09:55 1986  jdl  <jdl@cs.purdue.edu>
1363*7bdc2678Schristos
1364*7bdc2678Schristos	* rcsclean.sh: New file.
1365*7bdc2678Schristos
1366*7bdc2678SchristosWed Jun 18 15:02:32 1986  Jay Lepreau  <lepreau@cs.purdue.edu>
1367*7bdc2678Schristos
1368*7bdc2678Schristos	* rcsdiff.c: I broke -c<number> in last rev.
1369*7bdc2678Schristos	Also, mixing a bopt with an otheropt was broken.
1370*7bdc2678Schristos
1371*7bdc2678SchristosMon May 19 02:36:16 1986  Jay Lepreau  <lepreau@cs.purdue.edu>
1372*7bdc2678Schristos
1373*7bdc2678Schristos	* rcsdiff.c: Pass on new diff options, and allow them to be clustered.
1374*7bdc2678Schristos
1375*7bdc2678SchristosThu May 15 02:25:37 1986  Jay Lepreau  <lepreau@cs.purdue.edu>
1376*7bdc2678Schristos
1377*7bdc2678Schristos	* Makefile: 4.3BSD revision
1378*7bdc2678Schristos	* rcsedit.c: Use "Locked" instead of state in $Head expansion if locked.
1379*7bdc2678Schristos	* rcsfnms.c: add suffix .el for gnulisp
1380*7bdc2678Schristos	* rcsgen.c: Fix immediate EOF from non-tty files:
1381*7bdc2678Schristos	avoid 0377's in description.
1382*7bdc2678Schristos
1383*7bdc2678SchristosTue Dec 17 13:59:09 1985  albitz  <albitz@cs.purdue.edu>
1384*7bdc2678Schristos
1385*7bdc2678Schristos	* rcs.c: Changed setstate to rcs_setstate
1386*7bdc2678Schristos	because of conflict with random.o.
1387*7bdc2678Schristos
1388*7bdc2678SchristosWed Jun 26 07:34:28 1985  svb  <svb@cs.purdue.edu>
1389*7bdc2678Schristos
1390*7bdc2678Schristos	* rcsfnms.c: Comment leader '% ' for '*.tex' files added.
1391*7bdc2678Schristos
1392*7bdc2678SchristosWed Oct 17 21:12:11 1984  Admin  <root@cs.purdue.edu>
1393*7bdc2678Schristos
1394*7bdc2678Schristos	* sccstorcs.c:  Added check for having multiple deltas in a row
1395*7bdc2678Schristos	for the same revision.  --ks
1396*7bdc2678Schristos
1397*7bdc2678SchristosTue Dec 20 16:04:20 1983  Walter F. Tichy  <wft@purdue>
1398*7bdc2678Schristos
1399*7bdc2678Schristos	* rcsbase.h: Increased logsize, added macro SMALLOG.
1400*7bdc2678Schristos	moved setting of STRICT_LOCKING to Makefile.
1401*7bdc2678Schristos	changed DOLLAR to UNKN (conflict with KDELIM).
1402*7bdc2678Schristos
1403*7bdc2678SchristosThu Dec 15 12:28:54 1983  Walter F. Tichy  <wft@purdue>
1404*7bdc2678Schristos
1405*7bdc2678Schristos	* ci.c, co.c: ci -u and ci -l now set mode of working file properly.
1406*7bdc2678Schristos	* rcs.c: rcs -u now breaks most recent lock
1407*7bdc2678Schristos	if it can't find a lock by the caller.
1408*7bdc2678Schristos
1409*7bdc2678Schristos	* rcsfnms.c: Added check for KDELIM in filenames to pairfilenames().
1410*7bdc2678Schristos
1411*7bdc2678SchristosMon Dec  5 13:40:54 1983  Walter F. Tichy  <wft@purdue>
1412*7bdc2678Schristos
1413*7bdc2678Schristos	* ci.c: Merged with 3.9.1.1: added calls to clearerr(stdin).
1414*7bdc2678Schristos	* ci.c, co.c, rlog.c: made rewriteflag external.
1415*7bdc2678Schristos
1416*7bdc2678Schristos	* rcs.c: Added conditional compilation for sending mail.
1417*7bdc2678Schristos	Alternatives: V4_2BSD, V6, USG, and other.
1418*7bdc2678Schristos
1419*7bdc2678SchristosFri Dec  2 22:47:45 1983  Walter F. Tichy  <wft@purdue>
1420*7bdc2678Schristos
1421*7bdc2678Schristos	* rcsfnms.c: Added csh, red, and sl filename suffixes.
1422*7bdc2678Schristos
1423*7bdc2678SchristosWed Oct 19 04:22:11 1983  Jay Lepreau  <lepreau@purdue>
1424*7bdc2678Schristos
1425*7bdc2678Schristos	* rcsbase.h: Make teeny logsize big
1426*7bdc2678Schristos	* rcsgen.c: Added clearerr(stdin) for re-reading description from stdin.
1427*7bdc2678Schristos
1428*7bdc2678SchristosThu May 12 13:10:30 1983  Walter F. Tichy  <wft@purdue>
1429*7bdc2678Schristos
1430*7bdc2678Schristos	* rcsedit.c:
1431*7bdc2678Schristos	Added new markers Id and RCSfile; added locker to Header and Id.
1432*7bdc2678Schristos	Overhauled expandline completely()
1433*7bdc2678Schristos	(problem with $01234567890123456789@).
1434*7bdc2678Schristos	Moved trymatch() and marker table to rcskeys.c.
1435*7bdc2678Schristos	Log no longer expands full path of RCS file.
1436*7bdc2678Schristos
1437*7bdc2678SchristosWed May 11 14:24:13 1983  Walter F. Tichy  <wft@purdue>
1438*7bdc2678Schristos
1439*7bdc2678Schristos	* rlog.c: Added -b, updated getnumericrev() accordingly.
1440*7bdc2678Schristos	Replaced getpwuid() with getcaller().
1441*7bdc2678Schristos	Added options -L and -R; Fixed selection bug with -l on multiple files.
1442*7bdc2678Schristos	Fixed error on dates of the form -d'>date' (rewrote getdatepair()).
1443*7bdc2678Schristos
1444*7bdc2678Schristos	* rcsedit.c: Fixed truncation problem for $19chars followed by@@.
1445*7bdc2678Schristos	Added retry to expandline to resume after failed match which ended in $.
1446*7bdc2678Schristos
1447*7bdc2678Schristos	* rcsfnms.c: Added initialization of Dbranch to InitAdmin().
1448*7bdc2678Schristos	Changed pairfilenames():
1449*7bdc2678Schristos	1. added copying of path from workfile to RCS file, if RCS file omitted;
1450*7bdc2678Schristos	2. added getting the file status of RCS and working files;
1451*7bdc2678Schristos	3. added ignoring of directories.
1452*7bdc2678Schristos	Added comtable[] which pairs filename suffixes with comment leaders;
1453*7bdc2678Schristos	updated InitAdmin() accordingly.
1454*7bdc2678Schristos
1455*7bdc2678SchristosTue May 10 17:03:06 1983  Walter F. Tichy  <wft@purdue>
1456*7bdc2678Schristos
1457*7bdc2678Schristos	* ci.c: Added option -d and -w, and updated assignment of date, etc.
1458*7bdc2678Schristos	to new delta.
1459*7bdc2678Schristos	Option -k generates std. log message;
1460*7bdc2678Schristos	fixed undef. pointer in reading of log.
1461*7bdc2678Schristos	Replaced getlock() with findlock(),
1462*7bdc2678Schristos	getpwuid() with getcaller().
1463*7bdc2678Schristos	Moved all revision number generation to new routine addelta().
1464*7bdc2678Schristos	Removed calls to stat(); now done by pairfilenames().
1465*7bdc2678Schristos	Directed all interactive messages to stderr.
1466*7bdc2678Schristos	* ci.c, co.c: Added handling of default branches.
1467*7bdc2678Schristos	Replaced getpwuid() with getcaller().
1468*7bdc2678Schristos	Replaced unlink()--link() with rename()
1469*7bdc2678Schristos	* ci.c, co.c, rcs.c:
1470*7bdc2678Schristos	Removed calls to stat(); now done by pairfilenames().
1471*7bdc2678Schristos	Changed most calls to catchints() with restoreints().
1472*7bdc2678Schristos
1473*7bdc2678Schristos	* co.c: Added option -u and -f.
1474*7bdc2678Schristos	Changed and renamed rmoldfile() to rmworkfile().
1475*7bdc2678Schristos
1476*7bdc2678Schristos	* rcs.c:
1477*7bdc2678Schristos	Simplified breaklock(); added calls to findlock() and getcaller().
1478*7bdc2678Schristos	Added option -b (default branch). Updated -s and -w for -b.
1479*7bdc2678Schristos	Removed check for exit status of delivermail().
1480*7bdc2678Schristos	Directed all interactive output to stderr.
1481*7bdc2678Schristos
1482*7bdc2678Schristos	* ident.c: Added option -q and input from reading stdin.
1483*7bdc2678Schristos	Marker matching is now done with trymatch() (independent of keywords).
1484*7bdc2678Schristos
1485*7bdc2678Schristos	* rcsfcmp.c: Marker matching now uses trymatch().
1486*7bdc2678Schristos	Marker pattern is now checked precisely.
1487*7bdc2678Schristos
1488*7bdc2678Schristos	* rcsgen.c: Changed putamin() to abort if trying to reread redirected
1489*7bdc2678Schristos	stdin.  Fixed getdesc() to output a prompt on initial newline.
1490*7bdc2678Schristos
1491*7bdc2678Schristos	* rcskeep.c: Added new markers Id and RCSfile; extraction added.
1492*7bdc2678Schristos	Marker matching with trymatch().
1493*7bdc2678Schristos
1494*7bdc2678Schristos	* rcsutil.c: Added getcaller() and findlock().
1495*7bdc2678Schristos	Changed catchints() to check SIGINT for SIG_IGN before setting up
1496*7bdc2678Schristos	the signal (needed for background jobs in older shells).
1497*7bdc2678Schristos	Added restoreints().
1498*7bdc2678Schristos	Removed printing of full RCS path from logcommand().
1499*7bdc2678Schristos
1500*7bdc2678SchristosWed May  4 09:12:41 1983  Walter F. Tichy  <wft@purdue>
1501*7bdc2678Schristos
1502*7bdc2678Schristos	* rcsbase.h: Added markers Id and RCSfile.
1503*7bdc2678Schristos	Added Dbranch for default branches.
1504*7bdc2678Schristos
1505*7bdc2678Schristos	* rcskeys.c: Initial revision
1506*7bdc2678Schristos
1507*7bdc2678SchristosTue May  3 22:13:19 1983  Walter F. Tichy  <wft@purdue>
1508*7bdc2678Schristos
1509*7bdc2678Schristos	* rcsdiff.c: Added default branch, option -q, exit status like diff.
1510*7bdc2678Schristos	Added fterror() to replace faterror().
1511*7bdc2678Schristos
1512*7bdc2678SchristosTue Apr  5 14:47:36 1983  Walter F. Tichy  <wft@purdue>
1513*7bdc2678Schristos
1514*7bdc2678Schristos	* rcsfnms.c: fixed Suffix in InitAdmin().
1515*7bdc2678Schristos
1516*7bdc2678SchristosMon Mar 28 11:14:57 1983  Walter F. Tichy  <wft@purdue>
1517*7bdc2678Schristos
1518*7bdc2678Schristos	* rcsmerge.c, rcssyn.c: Added handling of default branch.
1519*7bdc2678Schristos
1520*7bdc2678SchristosFri Mar 25 18:12:51 1983  Walter F. Tichy  <wft@purdue>
1521*7bdc2678Schristos
1522*7bdc2678Schristos	* rcslex.c, rcsrev.c: Only changed Header to Id.
1523*7bdc2678Schristos
1524*7bdc2678SchristosFri Feb 18 17:37:49 1983  Walter F. Tichy  <wft@purdue>
1525*7bdc2678Schristos
1526*7bdc2678Schristos	* ident.c: removed printing of new line after last file.
1527*7bdc2678Schristos
1528*7bdc2678SchristosTue Feb 15 15:41:49 1983  Walter F. Tichy  <wft@purdue>
1529*7bdc2678Schristos
1530*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsutil.c: Added call to fastcopy()
1531*7bdc2678Schristos	to copy remainder of RCS file in blocks.
1532*7bdc2678Schristos
1533*7bdc2678SchristosTue Jan 18 18:04:25 1983  Walter F. Tichy  <wft@purdue>
1534*7bdc2678Schristos
1535*7bdc2678Schristos	* rcs.c: Changed sendmail(): now uses delivermail,
1536*7bdc2678Schristos	and asks whether to break the lock.
1537*7bdc2678Schristos
1538*7bdc2678SchristosMon Jan 17 18:01:04 1983  Walter F. Tichy  <wft@purdue>
1539*7bdc2678Schristos
1540*7bdc2678Schristos	* rcsfnms.c: Added getwd() and rename(); these can be removed by
1541*7bdc2678Schristos	defining V4_2BSD, since they are not needed in 4.2 bsd.
1542*7bdc2678Schristos	Changed sys/param.h to sys/types.h.
1543*7bdc2678Schristos
1544*7bdc2678SchristosSat Jan 15 17:46:50 1983  Walter F. Tichy  <wft@purdue>
1545*7bdc2678Schristos
1546*7bdc2678Schristos	* rcs.c: Removed putree(); replaced with puttree() in rcssyn.c.
1547*7bdc2678Schristos	Combined putdellog() and scanlogtext(); deleted putdellog().
1548*7bdc2678Schristos	Cleaned up diagnostics and error messages.  Fixed problem with
1549*7bdc2678Schristos	mutilated files in case of deletions in 2 files in a single command.
1550*7bdc2678Schristos	Changed marking of selector from 'D' to DELETE.
1551*7bdc2678Schristos
1552*7bdc2678Schristos	* rcsdiff.c: Expanded mainprogram to handle multiple RCS files.
1553*7bdc2678Schristos
1554*7bdc2678Schristos	* rcsbase.h: Replaced dbm.h with BYTESIZ, fixed definition of rindex().
1555*7bdc2678Schristos	Added variants of NCPFN and NCPPN for bsd 4.2,
1556*7bdc2678Schristos	selected by defining V4_2BSD.  Added macro DELNUMFORM
1557*7bdc2678Schristos	to have uniform format for printing delta text nodes.
1558*7bdc2678Schristos	Added macro DELETE to mark deleted deltas.
1559*7bdc2678Schristos
1560*7bdc2678Schristos	* rcssyn.c: Changed readdelta() to initialize selector and log-pointer.
1561*7bdc2678Schristos	Changed puttree to check for selector==DELETE;
1562*7bdc2678Schristos	putdtext() uses DELNUMFORM.
1563*7bdc2678Schristos
1564*7bdc2678SchristosFri Jan 14 15:37:31 1983  Walter F. Tichy  <wft@purdue>
1565*7bdc2678Schristos
1566*7bdc2678Schristos	* ci.c, co.c, rcs.c:
1567*7bdc2678Schristos	Added ignoring of interrupts while new RCS file is renamed;
1568*7bdc2678Schristos	Avoids deletion of RCS files by interrupts.
1569*7bdc2678Schristos
1570*7bdc2678SchristosThu Jan  6 09:33:45 1983  Walter F. Tichy  <wft@purdue>
1571*7bdc2678Schristos
1572*7bdc2678Schristos	* rcsdiff.c: Fixed passing of -c (context) option to diff.
1573*7bdc2678Schristos
1574*7bdc2678SchristosFri Dec 24 15:29:00 1982  Walter F. Tichy  <wft@purdue>
1575*7bdc2678Schristos
1576*7bdc2678Schristos	* rcsdiff.c, rcsmerge.c: Added call to catchsig().
1577*7bdc2678Schristos	* rlog.c: shortened output format.
1578*7bdc2678Schristos	* rcskeep.c: added missing #endif.
1579*7bdc2678Schristos	* rcsutil.c: added catchints(), ignoreints() for catching and ignoring
1580*7bdc2678Schristos	interrupts; fixed catchsig().
1581*7bdc2678Schristos
1582*7bdc2678SchristosFri Dec 10 16:22:37 1982  Walter F. Tichy  <wft@purdue>
1583*7bdc2678Schristos
1584*7bdc2678Schristos	* ci.c, rcs.c, rcsdiff.c: Corrected checking of return code from diff.
1585*7bdc2678Schristos	* rcs.c: Removed unused variables,
1586*7bdc2678Schristos	introduced variant COMPAT2 for skipping Suffix on -A files.
1587*7bdc2678Schristos	* rcsdiff.c, rcslex.c: Improved error messages.
1588*7bdc2678Schristos	* rcsmerge.c: Replaced getdelta() with gettree().
1589*7bdc2678Schristos	* rcsbase.h: Added two forms of DATEFORM, one using %02d,
1590*7bdc2678Schristos	the other %.2d.
1591*7bdc2678Schristos	* rcslex.c: Changed exit status on error to 1.
1592*7bdc2678Schristos
1593*7bdc2678SchristosWed Dec  8 21:34:49 1982  Walter F. Tichy  <wft@purdue>
1594*7bdc2678Schristos
1595*7bdc2678Schristos	* ci.c: Fixed return from addbranch().
1596*7bdc2678Schristos	* ci.c, co.c, rcsutil.c, rlog.c: Using DATEFORM to format dates.
1597*7bdc2678Schristos
1598*7bdc2678Schristos	* co.c: removed actual from call to preparejoin;
1599*7bdc2678Schristos	re-fixed printing of done at the end.
1600*7bdc2678Schristos
1601*7bdc2678Schristos	* rcs.c: Replaced getdelta() with gettree(),
1602*7bdc2678Schristos	changed breaklock to update field lockedby, added some diagnostics.
1603*7bdc2678Schristos
1604*7bdc2678Schristos	* rlog.c: removed call to checkaccesslist().
1605*7bdc2678Schristos	* rlog.c, rcsfnms.c: removed unused variable.
1606*7bdc2678Schristos
1607*7bdc2678Schristos	* rcssyn.c: renamed Commentleader to Commleader.
1608*7bdc2678Schristos
1609*7bdc2678SchristosSat Dec  4 13:24:08 1982  Walter F. Tichy  <wft@purdue>
1610*7bdc2678Schristos
1611*7bdc2678Schristos	* ci.c: Updated field lockedby in removelock(),
1612*7bdc2678Schristos	moved getlogmsg() before calling diff.
1613*7bdc2678Schristos	* ci.c, co.c, rcsutil.c: Replaced SNOOPDIR with SNOOPFILE.
1614*7bdc2678Schristos	* ci.c, co.c, rcsdiff.c, rcsrev.c, rlog.c:
1615*7bdc2678Schristos	Replaced getdelta() with gettree().
1616*7bdc2678Schristos	* co.c: Fixed printing of "done".
1617*7bdc2678Schristos	* rcsdiff.c: Changed diagnostics.
1618*7bdc2678Schristos	* ident.c, rcsbase.h: Added LOCKER.
1619*7bdc2678Schristos	* rlog.c: Removed updating of field lockedby.
1620*7bdc2678Schristos	* rcsbase.h: Locker, and USG (redefinition of rindex).
1621*7bdc2678Schristos	* rcsedit.c: Added expansion of keyword Locker.
1622*7bdc2678Schristos	* rcsfcmp.c, rcskeep.c: Initial revision
1623*7bdc2678Schristos	* rcsrev.c: Replaced getdelta() with gettree().
1624*7bdc2678Schristos	* rcssyn.c: Added routine gettree(),
1625*7bdc2678Schristos	which updates keeplock after reading the delta tree.
1626*7bdc2678Schristos	* rcsutil.c: changed addlock() to update lockedby-field.
1627*7bdc2678Schristos
1628*7bdc2678SchristosFri Dec  3 17:08:04 1982  Walter F. Tichy  <wft@purdue>
1629*7bdc2678Schristos
1630*7bdc2678Schristos	* rcs.c:
1631*7bdc2678Schristos	Replaced getlogin() with getpwuid(), fclose() with ffclose(),
1632*7bdc2678Schristos	/usr/ucb/Mail with macro MAIL. Removed handling of Suffix (-x).
1633*7bdc2678Schristos	fixed -u for missing revno.
1634*7bdc2678Schristos	* rcs.c, rlog.c: Disambiguated structure members.
1635*7bdc2678Schristos
1636*7bdc2678Schristos	* rlog.c:  Replaced getlogin with getpwuid(), %02d with %.2d,
1637*7bdc2678Schristos	fancydate with PRINTDATE.  Fixed printing of nil, removed
1638*7bdc2678Schristos	printing of Suffix, added shortcut if no revisions are printed.
1639*7bdc2678Schristos
1640*7bdc2678Schristos	* rcsbase.h:
1641*7bdc2678Schristos	Added dbm.h, stdio.h, RCSBASE, RCSSEP, RCSSUF, WORKMODE, TMPFILE3,
1642*7bdc2678Schristos	PRINTDATE, PRINTTIME, map, and ctab; removed Suffix.
1643*7bdc2678Schristos	Redefined keyvallength using NCPPN.
1644*7bdc2678Schristos	Changed putc() to abort on write error.
1645*7bdc2678Schristos
1646*7bdc2678Schristos	* rcsedit.c:  Added line number correction in case editing does
1647*7bdc2678Schristos	not start at the beginning of the file.  Changed keyword
1648*7bdc2678Schristos	expansion to always print a space before closing KDELIM;
1649*7bdc2678Schristos	Expansion for Header shortened.
1650*7bdc2678Schristos
1651*7bdc2678Schristos	* rcsutil.c: Added check to addlock() ensuring only one lock per person.
1652*7bdc2678Schristos	Addlock also returns a pointer to the lock created.
1653*7bdc2678Schristos	Deleted fancydate().
1654*7bdc2678Schristos
1655*7bdc2678SchristosThu Dec  2 13:27:13 1982  Walter F. Tichy  <wft@purdue>
1656*7bdc2678Schristos
1657*7bdc2678Schristos	* ci.c: Added option -k.
1658*7bdc2678Schristos
1659*7bdc2678SchristosSun Nov 28 19:45:37 1982  Walter F. Tichy  <wft@purdue>
1660*7bdc2678Schristos
1661*7bdc2678Schristos	* ci.c: Added mustcheckin() to check for redundant checkins.
1662*7bdc2678Schristos	Added xpandfile() to do keyword expansion for -u and -l;
1663*7bdc2678Schristos	-m appends linefeed to log message if necessary.
1664*7bdc2678Schristos	getlogmsg() suppresses prompt if stdin is not a terminal.
1665*7bdc2678Schristos	Replaced keeplock with lockflag.
1666*7bdc2678Schristos	* ci.c, co.c:
1667*7bdc2678Schristos	Replaced fclose() with ffclose(),
1668*7bdc2678Schristos	%02d with %.2d, getlogin() with getpwuid().
1669*7bdc2678Schristos
1670*7bdc2678Schristos	* co.c: Replaced mode generation for working file with WORKMODE.
1671*7bdc2678Schristos	Fixed nil printing. Fixed -j combined with -l and -p, and exit
1672*7bdc2678Schristos	or non-existing revisions in preparejoin().
1673*7bdc2678Schristos
1674*7bdc2678Schristos	* ident.c: removed Suffix;
1675*7bdc2678Schristos	added ungetc to avoid skipping over trailing KDELIM.
1676*7bdc2678Schristos
1677*7bdc2678Schristos	* merge.sh: 4.3BSD revision
1678*7bdc2678Schristos
1679*7bdc2678Schristos	* rcsmerge.c: Initial revision
1680*7bdc2678Schristos
1681*7bdc2678Schristos	* rcsfnms.c: Changed mktempfile() to store the generated filenames.
1682*7bdc2678Schristos	Changed getfullRCSname() to store the file and pathname,
1683*7bdc2678Schristos	and to delete leading "../" and "./".
1684*7bdc2678Schristos
1685*7bdc2678Schristos	* rcsgen.c: Replaced ferror() followed by fclose() with ffclose().
1686*7bdc2678Schristos	Putdesc() now suppresses the prompts if stdin is not a terminal.
1687*7bdc2678Schristos	A pointer to the current log message is now inserted into the
1688*7bdc2678Schristos	corresponding delta, rather than leaving it in a global variable.
1689*7bdc2678Schristos
1690*7bdc2678Schristos	* rcslex.c: Renamed ctab to map and included EOFILE;
1691*7bdc2678Schristos	ctab is now a macro in rcsbase.h.
1692*7bdc2678Schristos	Added fflsbuf(), fputs(), and fprintf(), which abort the RCS operations
1693*7bdc2678Schristos	properly in case there is an IO-error (e.g., file system full).
1694*7bdc2678Schristos
1695*7bdc2678Schristos	* rcsrev.c: fixed compartial() and compnum() for nil-parameters;
1696*7bdc2678Schristos	fixed nils in error messages. Testprogram output shortened.
1697*7bdc2678Schristos
1698*7bdc2678Schristos	* rcssyn.c: Reading and printing of Suffix removed;
1699*7bdc2678Schristos	version COMPAT2 skips the Suffix for files of release 2 format.
1700*7bdc2678Schristos	Fixed problems with printing nil.
1701*7bdc2678Schristos
1702*7bdc2678SchristosSat Nov 27 12:24:37 1982  Walter F. Tichy  <wft@purdue>
1703*7bdc2678Schristos
1704*7bdc2678Schristos	* rcsutil.c:  moved rmsema(), trysema(), trydiraccess(),
1705*7bdc2678Schristos	getfullRCSname() to rcsfnms.c.  Introduced macro SNOOP so that snoop
1706*7bdc2678Schristos	can be placed in directory other than TARGETDIR.
1707*7bdc2678Schristos	Changed %02d to %.2d for compatibility reasons.
1708*7bdc2678Schristos
1709*7bdc2678SchristosSun Nov 14 14:49:30 1982  Walter F. Tichy  <wft@purdue>
1710*7bdc2678Schristos
1711*7bdc2678Schristos	* rcsedit.c:
1712*7bdc2678Schristos	removed Suffix from keyword expansion. Replaced fclose with ffclose.
1713*7bdc2678Schristos	keyreplace() gets log message from delta, not from curlogmsg.
1714*7bdc2678Schristos	fixed expression overflow in while(c=putc(GETC....
1715*7bdc2678Schristos	checked nil printing.
1716*7bdc2678Schristos
1717*7bdc2678SchristosFri Nov 12 14:29:40 1982  Walter F. Tichy  <wft@purdue>
1718*7bdc2678Schristos
1719*7bdc2678Schristos	* rcsfnms.c: changed pairfilenames() to handle file.sfx,v;
1720*7bdc2678Schristos	also deleted checkpathnosfx(),
1721*7bdc2678Schristos	checksuffix(), checkfullpath(). Semaphore name generation updated.
1722*7bdc2678Schristos	mktempfile() now checks for nil path; freefilename initialized properly.
1723*7bdc2678Schristos	Added Suffix .h to InitAdmin. Added testprogram PAIRTEST.
1724*7bdc2678Schristos	Moved rmsema, trysema, trydiraccess, getfullRCSname
1725*7bdc2678Schristos	rom rcsutil.c to here.
1726*7bdc2678Schristos
1727*7bdc2678SchristosMon Oct 18 20:57:23 1982  Walter F. Tichy  <wft@purdue>
1728*7bdc2678Schristos
1729*7bdc2678Schristos	* ci.c:
1730*7bdc2678Schristos	Fixed ci -l, added ci -u (both do an implicit co after the ci).
1731*7bdc2678Schristos	Changed conflicting identifiers.
1732*7bdc2678Schristos	* ci.c, co.c, rcs.c: Fixed call to getlogin(), added call to
1733*7bdc2678Schristos	getfullRCSname().
1734*7bdc2678Schristos	* ci.c, co.c, rcs.c: An RCS file inherits its mode during the first ci
1735*7bdc2678Schristos	or rcs -i from the working file, otherwise it stays the same,
1736*7bdc2678Schristos	except that write permission is removed.
1737*7bdc2678Schristos	* ci.c, co.c, rcs.c, rcsedit.c, rcsgen.c: Added check for write error.
1738*7bdc2678Schristos
1739*7bdc2678Schristos	* co.c: The working file inherits its mode from the RCS file, plus
1740*7bdc2678Schristos	write permission for the owner.  The write permission is not given if
1741*7bdc2678Schristos	locking is strict and co does not lock.  An existing working file
1742*7bdc2678Schristos	without write permission is deleted automatically.  Otherwise, co asks
1743*7bdc2678Schristos	(empty answer: abort co).
1744*7bdc2678Schristos
1745*7bdc2678Schristos	* rcs.c: I replaced curdir() with getfullRCSname(),
1746*7bdc2678Schristos	cleaned up handling -U/L, and changed conflicting, long identifiers.
1747*7bdc2678Schristos
1748*7bdc2678Schristos	* rcsdiff.c: Initial revision
1749*7bdc2678Schristos
1750*7bdc2678Schristos	* rlog.c: call to curdir replaced with getfullRCSname(),
1751*7bdc2678Schristos	fixed call to getlogin(), cosmetic changes on output,
1752*7bdc2678Schristos	changed conflicting long identifiers.
1753*7bdc2678Schristos
1754*7bdc2678Schristos	* rcsbase.h: added macro STRICT_LOCKING, removed RCSUMASK.
1755*7bdc2678Schristos	renamed JOINFILE[1,2] to JOINFIL[1,2].
1756*7bdc2678Schristos
1757*7bdc2678Schristos	* rcsedit.c: Renamed expandstring() to xpandstring().
1758*7bdc2678Schristos
1759*7bdc2678Schristos	* rcsfnms.c: InitAdmin() now initializes StrictLocks=STRICT_LOCKING
1760*7bdc2678Schristos	(def. in rcsbase.h).  renamed checkpath() to checkfullpath().
1761*7bdc2678Schristos
1762*7bdc2678Schristos	* rcsgen.c: improved the prompt on putdesc().
1763*7bdc2678Schristos
1764*7bdc2678Schristos	* rcsrev.c: renamed compnum->cmpnum, compnumfld->cmpnumfld,
1765*7bdc2678Schristos	numericrevno->numricrevno.
1766*7bdc2678Schristos
1767*7bdc2678Schristos	* rcssyn.c: renamed putdeltatext to putdtext.
1768*7bdc2678Schristos
1769*7bdc2678Schristos	* rcsutil.c: added function getfullRCSname().
1770*7bdc2678Schristos
1771*7bdc2678SchristosWed Oct 13 16:04:59 1982  Walter F. Tichy  <wft@purdue>
1772*7bdc2678Schristos
1773*7bdc2678Schristos	* ci.c: added include file dbm.h for getting BYTESIZ.
1774*7bdc2678Schristos	This is used to check the return code from diff portably.
1775*7bdc2678Schristos	* ci.c, co.c, ident.c, rcs.c, rcsedit.c, rcsgen.c, rlog.c:
1776*7bdc2678Schristos	fixed type of variables receiving from getc() (char -> int).
1777*7bdc2678Schristos
1778*7bdc2678Schristos	* co.c: removed unused variables.
1779*7bdc2678Schristos
1780*7bdc2678Schristos	* rcsedit.c: made keyword expansion loop in expandline()
1781*7bdc2678Schristos	portable to machines without sign-extension.
1782*7bdc2678Schristos
1783*7bdc2678Schristos	* rcsutil.c: Cleanup message is now suppressed in quiet mode.
1784*7bdc2678Schristos
1785*7bdc2678SchristosMon Oct 11 19:41:17 1982  Walter F. Tichy  <wft@purdue>
1786*7bdc2678Schristos
1787*7bdc2678Schristos	* rcsbase.h: removed NBPW, NBPC, NCPW.
1788*7bdc2678Schristos	added typdef int void to aid compiling
1789*7bdc2678Schristos
1790*7bdc2678Schristos	* rcslex.c: removed unused label out:;
1791*7bdc2678Schristos	* rcslex.c, rcssyn.c:
1792*7bdc2678Schristos	made sure all calls to getc() return into an integer, not a char.
1793*7bdc2678Schristos
1794*7bdc2678Schristos	* rcsrev.c: changed expandsym() to check for source==nil;
1795*7bdc2678Schristos	returns zero length string in that case.
1796*7bdc2678Schristos
1797*7bdc2678SchristosThu May  6 11:38:00 1982  Walter F. Tichy  <wft@purdue>
1798*7bdc2678Schristos
1799*7bdc2678Schristos	* maketime.c, partime.c: Initial revision
1800