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

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

  ViewVC Help
Powered by ViewVC 1.1.5