/[meta-cvs]/meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3
ViewVC logotype

Diff of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.205 by kaz, Thu Oct 10 05:56:15 2002 UTC revision 1.205.2.81 by kaz, Fri Jan 9 05:09:20 2004 UTC
# Line 1  Line 1 
1    2004-01-08  Kaz Kylheku  <kaz@ashi.footprints.net>
2    
3            Parsing directory sticky tag from CVS/Tag requires
4            slightly different logic from the sticky tags in CVS/Entries.
5            CVS/Entries doesn't distinguish branch and version
6            sticky tags.
7    
8            This change gets rid of the incorrect warning about
9            not all files being on the same tag when the working
10            copy is sticky to a version tag.
11    
12            * code/branch.lisp (parse-sticky): Function renamed to
13            parse-dir-sticky.
14            (parse-entries-sticky): New function.
15            (equal-sticky): New function.
16            (read-cvs-entries): Use parse-entries-sticky.
17            (same-tag-check): Use equal-sticky instead of equal.
18            (what-are-we-sticky-to): Use parse-dir-sticky.
19    
20    2004-01-08  Kaz Kylheku  <kaz@ashi.footprints.net>
21    
22            Cleanup.
23    
24            * code/grab.lisp (*grab-help*): Spelling error.
25    
26            * code/system.lisp: Require posix module before clisp-unix,
27            which wants it.
28    
29            * code/clisp-unix.lisp: Don't bother requiring posix,
30            since it comes from system.
31            Require "chatter" rather than "chatter.lisp"; this is why
32            were not getting the compiled version of this module
33            into the images.
34    
35    2004-01-08  Kaz Kylheku  <kaz@ashi.footprints.net>
36    
37            Upgrade to CLISP 2.32.
38    
39            * code/unix-bindings/unix.lisp: If the CLISP version is
40            newer than 2.31 then set the variables ffi::*output-c-functions*
41            and ffi::*output-c-variables* to get the old translator
42            behavior.
43    
44            * code/rcs-utils.lisp: We can't use #s read syntax for
45            specifying an rcs-token structure literal, because
46            we have not specialized make-load-form. This used to
47            work anyway but now breaks under CLISP 2.32.
48    
49    2003-07-15  Kaz Kylheku  <kaz@ashi.footprints.net>
50    
51            * code/mcvs-generic.lisp (mcvs-generic): Removed
52            the default-include-meta-files keyword parameter.
53            (mcvs-tag, mcvs-commit): Remove use of keyword parameter.
54            This fixes the silly behavior of including meta files
55            even when the command line specifies a file list.
56            Also, bugfix: *nometa-option* now works when
57            global-if-empty-file-list is true, and there are no files.
58    
59            * code/update.lisp (mcvs-update): Remove use of keyword
60            parameter in call to mcvs-generic.
61    
62    2003-07-06  Kaz Kylheku  <kaz@ashi.footprints.net>
63    
64            Based on a patch from Walter C. Pelissero <walter@pelissero.de>
65    
66            * code/mcvs-main.lisp (with-open-file-ignore-errors): New macro.
67            (mcvs-execute): Use new macro to properly handle opening the
68            controlling terminal when there are errors other than
69            the non-existence of the object.
70    
71    2003-06-12  Kaz Kylheku  <kaz@ashi.footprints.net>
72    
73            * code/mcvs-main.lisp (mcvs-help): Move some special declarations
74            out of the function to the top level.
75    
76    2003-05-25  Kaz Kylheku  <kaz@ashi.footprints.net>
77    
78            * code/filt.lisp (mcvs-filt-loop): Do not filter F- names that
79            are embedded in paths (preceded by a slash). This supersedes
80            the old behavior which was to avoid filtering F- names preceded
81            by "MCVS/".
82    
83    2003-04-30  Kaz Kylheku  <kaz@ashi.footprints.net>
84    
85            * code/generic.lisp (mcvs-generic): The after-synchronization
86            was going in both directions rather than just MCVS -> tree.
87    
88    2003-04-30  Kaz Kylheku  <kaz@ashi.footprints.net>
89    
90            * code/mcvs-main.lisp (mcvs-execute): If not able to open controlling
91            tty, emit some warning messages that interactive error handling is
92            disabled. This alerts users to problems, like missing /dev directory
93            on Cygwin.
94    
95    2003-04-24  Kaz Kylheku  <kaz@ashi.footprints.net>
96    
97            * docs/generate.sh: Use valid shell syntax for identifiers.
98    
99    2003-04-24  Kaz Kylheku  <kaz@ashi.footprints.net>
100    
101            * code/mcvs-main.lisp (mcvs-execute): Bugfix: add missing OPEN
102            option to avoid trying to create the controlling terminal device
103            if it does not exist, and yield NIL as expected.
104    
105    2003-04-23  Kaz Kylheku  <kaz@ashi.footprints.net>
106    
107            New commands, sync-from-cvs and sync-to-cvs.
108    
109            * code/mcvs-main.lisp (*sync-to-cvs-options*, *sync-from-cvs-options*):
110            New option constants.
111            (*mcvs-command-table*): New entries.
112            (*usage*): New help text.
113    
114            * code/generic.lisp (mcvs-generic): New keyword parameter
115            no-invoke-cvs.
116            (mcvs-sync-to-wrapper, mcvs-sync-from-wrapper): New functions.
117    
118    2003-04-23  Kaz Kylheku  <kaz@ashi.footprints.net>
119    
120            Improved error handling again in a flash of sanity. The whole
121            idea of ``bail'' as a restart is gone. All code which must perform
122            some complex cleanup action does so as part of normal unwinding.
123            And so termination becomes safe.
124    
125            * code/update.lisp (mcvs-update): Change bail restart to continue.
126    
127            * code/mcvs-main.lisp (*global-options*): Remove "error-bail".
128            (*usage*): Remove description of --error-bail.
129            (mcvs-execute): Bind *mcvs-error-treatment* to :terminate rather
130            than :bail if controlling TTY cannot be opened.
131    
132            * code/move.lisp (mcvs-move): Change "Undoing move" error message
133            to "Undoing changes to map".
134    
135            * code/add.lisp (mcvs-add): Get rid of bail restart; move cleanup
136            code into unwind-protect block.
137    
138            * code/error.lisp (*mcvs-error-treatment*): Touch up docstring.
139            (mcvs-error-handler): Remove anything having to do with :bail.
140            Change description of `T' command to suggest that it is safe.
141    
142            * code/options.lisp (filter-mcvs-options): Remove handling of
143            "error-bail" option.
144    
145            * code/mapping.lisp (mapping-update): Get rid of outermost
146            restart-case, which had just a bail restart. Replace it with
147            unwind-protect block which does exactly the same restoration.
148    
149    2003-04-22  Kaz Kylheku  <kaz@ashi.footprints.net>
150    
151            Improved error handling.  Use of tty for user interaction, plus
152            new global option for selecting non-interactive bail behavior.
153    
154            * code/mcvs-main.lisp (*global-options*): add --error-bail option.
155            (*usage*): Describe new option.
156            (mcvs-execute): Dynamically bind *interactive-error-io* variable
157            to a stream formed by opening the controlling tty.
158            Send error message to *error-output* rather than *standard-output*.
159    
160            * code/unix-bindings/unix.lisp (unix-funcs:ctermid): New function,
161            FFI interface to mcvs_ctermid.
162    
163            * code/unix-bindings/wrap.c (mcvs_ctermid): New function.
164    
165            * code/chatter.lisp (chatter): Chatter now goes to *error-output*
166            rather than *standard-output*.
167    
168            * code/error.lisp (*interactive-error-io*): New special variable,
169            holds stream open to controlling tty.
170            (mcvs-terminate): New function.
171            (mcvs-error-handler): Use *interactive-error-io* to print menu
172            and obtain user input. Support the :bail value of
173            *mcvs-error-treatment* Plus some cosmetic changes.
174    
175            * code/options.lisp (filter-mcvs-options): Support --error-bail option.
176    
177            * code/filt.lisp (mcvs-filt-loop): Bugfix, (read-line t ...)
178            should be (read-line *standard-input* ...) because t stands
179            for *terminal-io* rather than *standard-io*, unlike in the
180            format function!
181    
182            * code/rcs-utils.lisp (rcs-read-token): Read from *standard-input*
183            rather than *terminal-io*.
184    
185    
186    2003-04-21  Kaz Kylheku  <kaz@ashi.footprints.net>
187    
188            Slightly redesigned error handling protocol.
189    
190            * code/update.lisp (mcvs-update): Change continue restart to bail.
191    
192            * code/add.lisp (mcvs-add): Likewise.
193    
194            * code/error.lisp (mcvs-error-handler): Specially recognize two
195            additional restart symbols, bail and info. A bail restart performs
196            any rolling back and cleanup and terminates. Continuation is now
197            properly reserved for actions that proceed boldly to finish
198            the job, possibly irretrievably clobbering precious data.
199            The info restart is now a standard way to indicate that more
200            details about the error can be obtained, so this does not have
201            to be represented as a special action with an ad-hoc restart.
202    
203            * code/create.lisp (mcvs-create): Change show restart to info.
204    
205            * code/remap.lisp (mcvs-remap): Change ignore restart to continue.
206    
207            * code/mapping.lisp (mapping-update): Change ignore and do-clobber
208            restarts to continue, and print-clobbers restart to info.
209            Change continue restart to bail.
210    
211    2003-04-14  Kaz Kylheku  <kaz@ashi.footprints.net>
212    
213            New command, remote-filt.
214    
215            * code/mcvs-main.lisp (*remote-filt-options*): New option constant.
216            (*mcvs-command-table*): Entries for new command added.
217            (*usage*): Help text added.
218    
219            * code/filt.lisp (filt-select-map): New keyword parameter for
220            specifing repository module. CVS up -p or co -p command generated
221            accordingly. Also, little glitch fixed: the local case descends
222            into the MCVS directory, to avoid a warning message that occurs
223            when CVS is used in server mode.
224            (mcvs-filt-loop): New function, contains most of the old mcvs-filt
225            function body.
226            (mcvs-filt): Calls new mcvs-filt-loop to do actual filtering work.
227            (mcvs-remote-filt, mcvs-remote-filt-wrapper): New functions.
228    
229            * code/clisp-unix.lisp (with-input-from-program): Macro changed
230            to include debug tracing of the invoked command.
231    
232    2003-04-13  Kaz Kylheku  <kaz@ashi.footprints.net>
233    
234            * code/grab.lisp (read-word-hash): Convert each token to a simple
235            string object. This can save a lot of memory when large numbers
236            of files have to be analyzed.
237    
238    2003-04-12  Kaz Kylheku  <kaz@ashi.footprints.net>
239    
240            * code/mapping.lisp (mapping-read): Provide a restart for
241            file errors, which lets the user interactively substitute an
242            empty map if the file can't be read. This is intended to handle
243            the case when MCVS/MAP is missing; for example, the user
244            updated to a sticky date for which no revision of the MAP
245            exists. The effect of continuing will be that all files
246            will disappear.
247    
248    2003-04-12  Kaz Kylheku  <kaz@ashi.footprints.net>
249    
250            Revamped the synchronization logic. Synchronization now happens
251            in a specific direction.  For example, if we are doing a diff,
252            we just need to push changes from the tree to the MCVS directory,
253            not the other way around. Or: before an update or commit, we push from
254            the tree to MCVS, then after the update, in the other direction.
255    
256            * code/update.lisp (mcvs-update): The before update is done
257            in the :left direction only, and the after update in the :right.
258    
259            * code/move.lisp (mcvs-move): The just-in-case sync is done
260            in the :left direction only.
261    
262            * code/link.lisp (mcvs-link): Likewise.
263    
264            * code/remove.lisp (mcvs-remove): Likewise.
265    
266            * code/add.lisp (mcvs-add): Get rid of mapping-synchronize call;
267            it's completely unnecessary, since the new files are not even
268            in the MAP-LOCAL, and the add logic explicitly links them into
269            the MCVS directory.
270    
271            * code/generic.lisp (mcvs-generic): New keyword parameter,
272            need-sync-before. Before-synchronization done in :left direction,
273            after-synchronization in :right direction. Before-synchronization
274            is now not done by default; need-sync-before must be specified.
275            (mcvs-commit-wrapper): Specify before and after sync.
276            (mcvs-diff-wrapper, mcvs-status-wrapper,
277            mcvs-edit-wrapper): Explicitly specify before sync.
278            (mcvs-tag-wrapper, mcvs-annotate-wrapper): Implicitly specify no sync.
279            (mcvs-unedit-wrapper): Add before sync.
280    
281            * code/sync.lisp (synchronize-files):  New key parameter :direction,
282            values can be :left, :right or :either. Default is :either.
283            If the value is :left or :right, then a sync is done only in that
284            direction, otherwise the value :no-sync is returned.
285            Behavior change: if the left file is missing (F- file in MCVS
286            directory) it is not re-created, but rather :no-sync is returned.
287            Also, if both files exist, have the same timestamp, and are
288            distinct objects, if the direction is :left or :right, then
289            the appropriate restart is automatically chosen. So this will
290            do the right thing on filesystems where link() is performed by
291            copying, without bothering the user with the error.
292    
293            * code/mapping.lisp (mapping-synchronize): New :direction key
294            parameter, passed down to synchronize-filed. The new :no-sync
295            return value from synchronize-files is handled.
296            (mapping-update): Select the :right direction for synchronizing
297            moves, adds or rollbacks.
298    
299    2003-04-06  Kaz Kylheku  <kaz@ashi.footprints.net>
300    
301            * code/posix.lisp (execute-program-xargs): Fix again: perform
302            all of the split command lines, even if some of them fail.
303            The returned status is a logical AND combination; if all of the
304            subcommands succeeded then it's T, otherwise NIL.
305    
306    
307    2003-03-31  Kaz Kylheku  <kaz@ashi.footprints.net>
308    
309            * code/posix.lisp (execute-program-xargs): Bugfix: if program
310            execution fails, then bail out of the entire function, not just
311            the inner loop. Otherwise the program is wrongly run again,
312            on a bogus file list.
313    
314    2003-03-04  Kaz Kylheku  <kaz@ashi.footprints.net>
315    
316            * code/update.lisp (mcvs-update): Simplified restart code.
317    
318    2003-03-04  Kaz Kylheku  <kaz@ashi.footprints.net>
319    
320            * code/restart.lisp (parse-restart-case-keywords): New function.
321            (super-restart-case-expander): Some logic factored out
322            into new function.
323    
324    2003-03-03  Kaz Kylheku  <kaz@ashi.footprints.net>
325    
326            * code/mapping.lisp (mapping-update): Rewrite restart-bind
327            block using super-restart-case.
328    
329    2003-03-01  Kaz Kylheku  <kaz@ashi.footprints.net>
330    
331            * code/restart.lisp (super-restart-case-expander): Roll the
332            functionality of :report-format into :report.
333            (super-restart-case): Slight rearrangement of the tagbody
334            to eliminate the skip around the out-code.
335    
336    2003-03-01  Kaz Kylheku  <kaz@ashi.footprints.net>
337    
338            * code/restart.lisp (super-restart-case-expander): New function.
339            (super-restart-case): New macro.
340    
341            * code/create.lisp (mcvs-create): Rewrite a restart-bind
342            construct more succinctly using super-restart-case.
343    
344    2003-02-26  Kaz Kylheku  <kaz@ashi.footprints.net>
345    
346            * code/create.lisp (mcvs-create): After the TYPES file is
347            edited, scan the MCVS directory for unexpected files.
348            The intent is to detect text editor backups. If any are
349            found, some interactive error handling lets the user acknowledge
350            their deletion. If they are not deleted, then cvs import will
351            bring them into the repository. This behavior was discovered
352            by Johannes Grødem who suggested that it could be handled.
353    
354    2003-02-25  Kaz Kylheku  <kaz@ashi.footprints.net>
355    
356            * code/unix-bindings/wrap.c (mcvs_spawn): One more waitpid() bug!
357            The SIGCHLD signal handler was being set in the child process only,
358            so although we fixed the waitpid() behavior in the CVS child
359            process, we did not fix it in the Meta-CVS process. The ECHILD
360            problem was sporadically reproduced by Johannes Grødem on a fast
361            Athlon machine; it requires CVS to exit before Meta-CVS reaches
362            the waitpid() call.
363    
364    2003-02-24  Kaz Kylheku  <kaz@ashi.footprints.net>
365    
366            * code/options.lisp (format-opt): Some one-argument options of
367            CVS must appear as one command parameter, with no separation
368            between the option letter and the argument characters.
369            For example, ``cvs log -r foo::bar'' is invalid, it must
370            be ``cvs log -rfoo::bar''.  The format-opt function now
371            formats *all* one-letter options that have one argument
372            as one string.
373    
374    2003-02-23  Kaz Kylheku  <kaz@ashi.footprints.net>
375    
376            * code/mcvs-main.lisp (*usage*): Add help text for --up option.
377    
378    
379    2003-02-20  Kaz Kylheku  <kaz@ashi.footprints.net>
380    
381            Fix remaining occurences of SIG_IGN action for SIGCHLD being
382            passed to child processes.
383    
384            * code/unix-bindings/unix.lisp (unix-funcs:default-sigchld): New call
385            out function.
386    
387            * code/clisp-unix.lisp (with-input-from-program,
388            with-output-to-program): Call the new default-sigchild function
389            to set SIGCHILD signal handler to SIG_DFL just before creating
390            the pipe.
391    
392            * code/unix-bindings/wrap.c (mcvs_default_sigchld): New function.
393    
394    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
395    
396            New --up option added for escaping out of nested sandboxes.
397    
398            * code/mcvs-main.lisp (*cvs-options*): Added "up" 1 arg option.
399    
400            * code/options.lisp (*nesting-escape-option*): New global,
401            default value 0.
402            (filter-mcvs-options): Filter new option, parse out and validate
403            integer argument.
404    
405            * code/mapping.lisp (mcvs-locate): When searching for MCVS
406            directory, skip N matches, where N is the value of
407            *nesting-escape-option*.
408    
409    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
410    
411            * code/mcvs-main.lisp (*cvs-options*): Constant renamed
412            to *global-options*.
413    
414    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
415    
416            * code/unix-bindings/wrap.c (mcvs-spawn): In the child process,
417            reset the signal handler for SIGCHLD to SIG_DFL before exec-ing
418            the new image. This is needed because CLISP set it to SIG_IGN,
419            which causes child reaping problems in spawned programs.
420            This should fix the ``No child processes'' problem when running
421            CVS from Meta-CVS.
422    
423    2003-02-11  Kaz Kylheku  <kaz@ashi.footprints.net>
424    
425            * code/memoize.lisp (remove-key-aux-rest, strip-lambda-list,
426            extract-tests, remove-tests, memoize-expander, factor-memo-labels,
427            define-memoized-function, memoized-labels): Documentation strings
428            added to this cryptic code.
429    
430    2003-02-02  Kaz Kylheku  <kaz@ashi.footprints.net>
431    
432            Make tag command work on whole tree if no arguments are given,
433            just like commit.
434    
435            * code/generic.lisp (mcvs-generic): no-fix-empty-filelist keyword
436            parameter renamed to global-if-empty-file-list, which more closely
437            reveals the purpose.
438            (mcvs-commit-wrapper): Use new keyword name.
439            (mcvs-tag-wrapper): Specify T value for :global-if-empty-filelist
440            argument, so the whole project is tagged by default if no arguments
441            are given.
442    
443    2003-02-01  Kaz Kylheku  <kaz@ashi.footprints.net>
444    
445            * code/unix-bindings/wrap.c (impl_spawn): Try waitpid again in a loop
446            while it returns -1, and errno is EINTR.
447            Reported by Johannes Grødem <johs@copyleft.no>.
448    
449    2003-01-30  Kaz Kylheku  <kaz@ashi.footprints.net>
450    
451            * code/posix.lisp: Move some (declaim inline) to the correct
452            location, before the function to be inlined.
453    
454            * code/clisp-unix.lisp: Likewise.
455            * code/cmucl-unix.lisp: Likewise.
456            * code/mapping.lisp: Likewise.
457    
458    2003-01-25  Kaz Kylheku  <kaz@ashi.footprints.net>
459    
460            * code/unix-bindings/wrap.c (mcvs_getcwd): If getcwd() returns
461            NULL, it only means that the buffer is too small if errno is also
462            set to ERANGE. This second condition was not being tested.
463            Reported by Johannes Grødem <johs@copyleft.no>.
464    
465            * code/clisp-unix.lisp (getcwd-error): New condition.
466            (initialize-instance (getcwd-error)): New method.
467            (getcwd): Raise getcwd-error condition if unix-funcs::getcwd
468            returns NIL.
469    
470    2003-01-15  Kaz Kylheku  <kaz@ashi.footprints.net>
471    
472            * code/unix-bindings/impl.c: File renamed to wrap.c.
473            (impl_null_pointer_p, impl_get_errno, impl_set_errno, impl_readdir,
474            impl_readlink, impl_stat, impl_lstat, impl_fstat, impl_getcwd,
475            impl_spawn): Prefix changed from ``impl_'' to ``mcvs_''.
476    
477            * code/unix-bindings/link.sh, code/unix-bindings/Makefile,
478            code/unix-bindings/unix.lisp: Updated accordingly.
479    
480    2003-01-13  Kaz Kylheku  <kaz@ashi.footprints.net>
481    
482            Support -k CVS option in merge and remerge commands.
483            Reported by Jamie Wellnitz.
484    
485            * code/mcvs-main.lisp (*merge-options*, *remerge-options*): Add
486            one argument -k option.
487    
488            * code/merge.lisp (mcvs-merge): Support extra argument for passing
489            command options. Pass them down to mcvs-update.
490            (mcvs-merge-wrapper, mcvs-remerge-wrapper): Don't ignore command
491            options but pass them to mcvs-merge.
492    
493    2003-01-13  Kaz Kylheku  <kaz@ashi.footprints.net>
494    
495            * code/install.sh: More fail-safe way to locate library directory;
496            works even when clisp executable is a symlink.  Thanks to Sam
497            Steingold, CLISP maintainer, for tip.
498    
499    2003-01-12  Kaz Kylheku  <kaz@ashi.footprints.net>
500    
501            Hard link sync optimization.
502    
503            * code/mapping.lisp (mapping-synchronize): New optional parameter,
504            specifies map to use instead of reading *map-local*.
505    
506            * code/mcvs-generic.lisp (mcvs-generic): Pass extra parameter to
507            mapping-synchronize to only sync the selected subset of files.
508    
509    2003-01-01  Kaz Kylheku  <kaz@ashi.footprints.net>
510    
511            * code/unix-bindings/impl.c (impl_spawn): For Cygwin, re-implemented
512            this function as a wrapper for the spawnvp function. The combination
513            of fork + execvp + waitpid does not work because waitpid is broken;
514            it waits for thep rocess, but then returns -1 and sets errno
515            to ECHILD.
516    
517    2002-12-27  Kaz Kylheku  <kaz@ashi.footprints.net>
518    
519            * code/options.lisp (process-cvs-options): The version number
520            now has three components.
521    
522    2002-12-13  Kaz Kylheku  <kaz@ashi.footprints.net>
523    
524            * code/install.sh: Now works under CLISP installations which
525            call the CLISP executable lisp.exe rather than lisp.run.
526            This is the case under Cygwin as of CLISP 2.30 or so.
527    
528    2002-12-03  Kaz Kylheku  <kaz@ashi.footprints.net>
529    
530            * code/sync.lisp (synchronize-files): Call exec-check using
531            file info object, rather than file name. This cuts in half
532            the number of calls to stat().
533    
534    2002-12-03  Kaz Kylheku  <kaz@ashi.footprints.net>
535    
536            Discontinuing use of CLISP's ext:run-program function in favor
537            of a new workalike which doesn't rely on the shell interpreter.
538    
539            * code/unix-bindings/unix.lisp (unix-funcs:spawn): New C call out
540            function (unix-funcs:run-program): New function, implemented using
541            spawn.
542    
543            * code/unix-bindings/impl.c (impl_spawn): New function; wraps
544            up fork, execvp and waitpid.
545    
546            * code/clisp-unix.lisp: Switch from ext:run-program to
547            unix-funcs:run-program.
548    
549    2002-11-20  Kaz Kylheku  <kaz@ashi.footprints.net>
550    
551            Some security fixes.  Funny I didn't think of this sooner!
552    
553            * code/types.lisp (types-read): Make sure *read-eval* is bound to
554            nil when calling READ.
555    
556            * code/mapping.lisp (mapping-read-raw-map, displaced-path-read):
557            Likewise.
558    
559    
560    2002-11-16  Kaz Kylheku  <kaz@ashi.footprints.net>
561    
562            * code/posix.lisp (invoke-editor-on): Honor the CVSEDITOR and VISUAL
563            environment variables, not just EDITOR.
564    
565    2002-11-09  Kaz Kylheku  <kaz@ashi.footprints.net>
566    
567            * code/link.lisp (mcvs-link): Revamped link command to behave properly
568            when the destination object is a directory. It must create the link in
569            that directory, rather than try to create a link with that name.
570            Plus handles various tricky cases. Trailing slash in destination name,
571            destination that is a directory within target directory, attempted
572            link creation in MCVS etc.
573    
574    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
575    
576            More support for -n option.
577    
578            * code/mcvs-main.lisp (*usage*): Document -n option.
579    
580            * code/move.lisp (mcvs-move-wrapper): Remove bogus error check
581            for presence of global options.
582    
583            * code/options.lisp (honor-dry-run): New macro for conditionally
584            not executing some forms if it's a dry run, and logging some
585            debugging information.
586    
587            * code/sync.lisp (synchronize-files): Honor dry run.
588    
589            * code/mapping.lisp (mapping-synchronize, mapping-update): Likewise.
590    
591    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
592    
593            Start of support for global option -n (dry run).
594    
595            * code/options.lisp (*dry-run-option*): New boolean variable.
596            (process-cvs-options): Look for -n and set *dry-run-option*.
597    
598            * code/types.lisp (types-write): Do not write file if *dry-run-option*
599            is true.
600    
601            * code/types.lisp (mapping-write): Likewise.
602    
603            * code/add.lisp (mcvs-add): When calling types-let-user-edit,
604            temporarily disable the dry run option, so that TYPES-NEW can
605            be written. When the dry run option is in effect, do not try
606            to cvs add the TYPES file.
607    
608    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
609    
610            * code/branch.lisp (*branch-help*): New string constant.
611    
612            * code/mcvs-main.lisp (*mcvs-command-table*): *branch-help* hooked in.
613    
614    2002-11-02  Kaz Kylheku  <kaz@ashi.footprints.net>
615    
616            * code/mcvs-main (*args*, *options*): Unused variables removed.
617            (mcvs-execute): Global option processing code removed.
618    
619            * code/options.lisp (*print-usage*): New boolean variable; tells
620            mcvs-execute to print usage and terminate.
621            (filter-mcvs-options): New function. Does the job that
622            filter-global-options did.
623            (process-cvs-options): Does the global option processing that
624            was previously in mcvs-execute.
625            (filter-global-options): Now just calls filter-mcvs-options,
626            process-cvs-options.
627    
628    2002-11-02  Kaz Kylheku  <kaz@ashi.footprints.net>
629    
630            * INSTALL: Include caveat about GCC 3 problems.
631    
632    2002-10-30  Kaz Kylheku  <kaz@ashi.footprints.net>
633    
634            * code/prop.lisp (mcvs-prop): If there are no options specified,
635            don't do anything.
636    
637    2002-10-30  Kaz Kylheku  <kaz@ashi.footprints.net>
638    
639            * code/unix-bindings/unix.lisp: Rewrote defpackage to take only
640            selected symbols from CLISP's FFI package rather using the whole
641            thing. FFI, and the packages it uses, are moving targets.
642            The symbol def-c-call-out is interned in unix-funcs.
643            (unix-funcs:def-c-call-out): New internal macro. CLISP says that
644            ffi:def-c-call-out is obsolescent.
645    
646            * code/unix-bindings/Makefile: The ``clean'' target removes
647            unix.lib, not only unix.fas.
648    
649    2002-10-27  Kaz Kylheku  <kaz@ashi.footprints.net>
650    
651            Bugfix to the directory restructuring code. A clobbering
652            file add was not actually removing the clobbered file, but leaving
653            it up to the synchronization algorithm, so the time-stamp would
654            decide whether the local file gets clobbered by the repository one,
655            or whether it wins.
656    
657            * code/mapping.lisp (mapping-update): Logic for handling added
658            file ensures that a clobbered local file is removed first.
659    
660    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
661    
662            New link command for creating symlinks.
663    
664            * mcvs-main.lisp (*link-options*): New option constant.
665            (*mcvs-command-table*): Entries for new command added.
666            (*usage*): Help text added.
667    
668            * link.lisp: New file.
669            (mcvs-link, mcvs-link-wrapper): New functions.
670    
671    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
672    
673            * code/grab.lisp (*grab-help*): Rewritten.
674    
675            * code/checkout.lisp (*export-help*): Formatted for 80 columns.
676    
677    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
678    
679            * code/mcvs-main.lisp (*usage*): Expand tabs to spaces.
680    
681            * code/add.lisp (*add-help*): Likewise.
682    
683            * code/remove.lisp (*remove-help*): Likewise.
684    
685            * code/create.lisp (*create-help*): Likewise.
686    
687    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
688    
689            * code/purge.lisp (mcvs-purge): Get rid the processing of the
690            nonexistent -n option from purge code.  The global option -n does an
691            adequate job of implementing a dry run.
692    
693    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
694    
695            * code/mapping.lisp (mapping-removed-files): Skip over the MCVS/CVS
696            directory, which can contain CVS-generated files with F- names and a ,t
697            suffix. These trip up the algorithm.
698    
699    2002-10-21  Kaz Kylheku  <kaz@ashi.footprints.net>
700    
701            Add help to move command.
702    
703            * code/mcvs-main.lisp (*mcvs-command-table*): Added *move-help*.
704    
705            * code/move.lisp (*mcvs-help*): New constant.
706    
707    2002-10-20  Kaz Kylheku  <kaz@ashi.footprints.net>
708    
709            Fix broken ``filt -r''.
710    
711            * code/mapping.lisp (mapping-read-raw-map): New function; reads
712            map from stream and does sanity check.
713            (mapping-read): Argument can be a filename or stream. Call to
714            mapping-read-raw-map to factor out common code for both cases.
715    
716            * code/filt.lisp (filt-select-map): This was still just
717            reading the raw structure from the cvs coprocess, which worked under
718            the old map format, when the internal and external representations
719            were the same. Now it calls mapping-read on the stream.
720    
721    2002-10-19  Kaz Kylheku  <kaz@ashi.footprints.net>
722    
723            * UPGRADE-EXISTING: New file.
724    
725    2002-10-19  Kaz Kylheku  <kaz@ashi.footprints.net>
726    
727            * code/mcvs-main.lisp: Clear out *modules* list before requiring
728            modules. This is needed so that mcvs-upgrade works, because there
729            is already a populated list in the Lisp image.
730    
731    2002-10-17  Kaz Kylheku  <kaz@ashi.footprints.net>
732    
733            Detect failure to start text editor.
734    
735            * code/posix.lisp (*editor*): Change name to *mcvs-editor*, due
736            to name-clash with a CLISP extension!
737    
738            * code/mcvs-main.lisp: Likewise.
739    
740            * code/types.lisp (types-let-user-edit): Provide an individual
741            restart-case block around the invocation of the text editor,
742            which lets the user re-try the editor.
743    
744    2002-10-14  Kaz Kylheku  <kaz@ashi.footprints.net>
745    
746            Compiler warning fix.
747    
748            * code/posix.lisp (*argument-limit*): Constant moved here.
749    
750            * code/clisp-unix.lisp (*argument-limit*): Constant removed.
751    
752            * code/cmucl-unix.lisp (*argument-limit*): Likewise.
753    
754    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
755    
756            * code/install.sh: generate a script called mcvs-upgrade.
757    
758    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
759    
760            * code/prop.lisp (mcvs-prop): Read *mcvs-map*, not *mcvs-map-local*.
761    
762    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
763    
764            * code/mcvs-main.lisp (*watchers-options*): New constant.
765            (*edit-options*): Likewise.
766            (*unedit-options*): Likewise.
767            (*editors-options*): Likewise.
768            (*mcvs-command-table*): Added watchers, edit unedit, and editors
769            commands.
770            (*usage*): Updated.
771    
772            * code/generic.lisp (mcvs-watchers-wrapper, mcvs-edit-wrapper,
773            mcvs-unedit-wrapper, mcvs-editors-wrapper): New functions.
774    
775    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
776    
777            * code/mcvs-main.lisp (*usage*): Describe export and watch commands.
778    
779    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
780    
781            * code/mcvs-main.lisp (*watch-options*): New constant.
782            (*mcvs-command-table*): New entry for watch command.
783    
784            * code/watch.lisp: New file.
785    
786    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
787    
788            * code/mcvs-main.lisp (*export-options*): New constant.
789            (*mcvs-command-table*): New entries for export command.
790    
791            * code/checkout.lisp (mcvs-checkout): New keyword to specify export
792            behavior.  This causes cvs export to be run instead of checkout,
793            and the MCVS directory to be deleted after.
794            (mcvs-checkout-wrapper): Common function factored out into a flet.
795            (mcvs-export-wrapper): New function. Verifies that one of -D and -r
796            options is present, then runs mcvs-checkout, specifying export
797            behavior.
798    
799    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
800    
801            * code/mcvs-main.lisp (*update-options*): Added -C option.
802    
803            * code/update.lisp (mcvs-update): Fall back on the mcvs-generic
804            if --metaonly or --nometa is specified to run CVS on specific
805            files.
806    
807    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
808    
809            * code/filt.lisp (mcvs-filt): Do not filter F- names if
810            immediately preceded by MCVS/ prefix.
811    
812    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
813    
814            * code/clisp-unix.lisp (execute-program): Provide debug traces
815            for command execution.
816    
817  2002-10-09  Kaz Kylheku  <kaz@ashi.footprints.net>  2002-10-09  Kaz Kylheku  <kaz@ashi.footprints.net>
818    
819          * code/add.lisp (*add-help*): Remove spurious text cut and pasted from          * code/add.lisp (*add-help*): Remove spurious text cut and pasted from
# Line 1144  Line 1960 
1960    
1961          The ``import'' command is renamed to ``create''.          The ``import'' command is renamed to ``create''.
1962    
1963          * mcvs.main (*create-options*): Renamed to *import-options*.          * mcvs-main.lisp (*create-options*): Renamed to *import-options*.
1964          (*mcvs-command-table*): Updated.          (*mcvs-command-table*): Updated.
1965          (*usage*): Updated.          (*usage*): Updated.
1966    

Legend:
Removed from v.1.205  
changed lines
  Added in v.1.205.2.81

  ViewVC Help
Powered by ViewVC 1.1.5