/[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.61 by kaz, Tue Apr 1 06:37:46 2003 UTC
# Line 1  Line 1 
1    2003-03-31  Kaz Kylheku  <kaz@ashi.footprints.net>
2    
3            * code/posix.lisp (execute-program-xargs): Bugfix: if program
4            execution fails, then bail out of the entire function, not just
5            the inner loop. Otherwise the program is wrongly run again,
6            on a bogus file list.
7    
8    2003-03-04  Kaz Kylheku  <kaz@ashi.footprints.net>
9    
10            * code/update.lisp (mcvs-update): Simplified restart code.
11    
12    2003-03-04  Kaz Kylheku  <kaz@ashi.footprints.net>
13    
14            * code/restart.lisp (parse-restart-case-keywords): New function.
15            (super-restart-case-expander): Some logic factored out
16            into new function.
17    
18    2003-03-03  Kaz Kylheku  <kaz@ashi.footprints.net>
19    
20            * code/mapping.lisp (mapping-update): Rewrite restart-bind
21            block using super-restart-case.
22    
23    2003-03-01  Kaz Kylheku  <kaz@ashi.footprints.net>
24    
25            * code/restart.lisp (super-restart-case-expander): Roll the
26            functionality of :report-format into :report.
27            (super-restart-case): Slight rearrangement of the tagbody
28            to eliminate the skip around the out-code.
29    
30    2003-03-01  Kaz Kylheku  <kaz@ashi.footprints.net>
31    
32            * code/restart.lisp (super-restart-case-expander): New function.
33            (super-restart-case): New macro.
34    
35            * code/create.lisp (mcvs-create): Rewrite a restart-bind
36            construct more succinctly using super-restart-case.
37    
38    2003-02-26  Kaz Kylheku  <kaz@ashi.footprints.net>
39    
40            * code/create.lisp (mcvs-create): After the TYPES file is
41            edited, scan the MCVS directory for unexpected files.
42            The intent is to detect text editor backups. If any are
43            found, some interactive error handling lets the user acknowledge
44            their deletion. If they are not deleted, then cvs import will
45            bring them into the repository. This behavior was discovered
46            by Johannes Grødem who suggested that it could be handled.
47    
48    2003-02-25  Kaz Kylheku  <kaz@ashi.footprints.net>
49    
50            * code/unix-bindings/wrap.c (mcvs_spawn): One more waitpid() bug!
51            The SIGCHLD signal handler was being set in the child process only,
52            so although we fixed the waitpid() behavior in the CVS child
53            process, we did not fix it in the Meta-CVS process. The ECHILD
54            problem was sporadically reproduced by Johannes Grødem on a fast
55            Athlon machine; it requires CVS to exit before Meta-CVS reaches
56            the waitpid() call.
57    
58    2003-02-24  Kaz Kylheku  <kaz@ashi.footprints.net>
59    
60            * code/options.lisp (format-opt): Some one-argument options of
61            CVS must appear as one command parameter, with no separation
62            between the option letter and the argument characters.
63            For example, ``cvs log -r foo::bar'' is invalid, it must
64            be ``cvs log -rfoo::bar''.  The format-opt function now
65            formats *all* one-letter options that have one argument
66            as one string.
67    
68    2003-02-23  Kaz Kylheku  <kaz@ashi.footprints.net>
69    
70            * code/mcvs-main.lisp (*usage*): Add help text for --up option.
71    
72    
73    2003-02-20  Kaz Kylheku  <kaz@ashi.footprints.net>
74    
75            Fix remaining occurences of SIG_IGN action for SIGCHLD being
76            passed to child processes.
77    
78            * code/unix-bindings/unix.lisp (unix-funcs:default-sigchld): New call
79            out function.
80    
81            * code/clisp-unix.lisp (with-input-from-program,
82            with-output-to-program): Call the new default-sigchild function
83            to set SIGCHILD signal handler to SIG_DFL just before creating
84            the pipe.
85    
86            * code/unix-bindings/wrap.c (mcvs_default_sigchld): New function.
87    
88    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
89    
90            New --up option added for escaping out of nested sandboxes.
91    
92            * code/mcvs-main.lisp (*cvs-options*): Added "up" 1 arg option.
93    
94            * code/options.lisp (*nesting-escape-option*): New global,
95            default value 0.
96            (filter-mcvs-options): Filter new option, parse out and validate
97            integer argument.
98    
99            * code/mapping.lisp (mcvs-locate): When searching for MCVS
100            directory, skip N matches, where N is the value of
101            *nesting-escape-option*.
102    
103    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
104    
105            * code/mcvs-main.lisp (*cvs-options*): Constant renamed
106            to *global-options*.
107    
108    2003-02-12  Kaz Kylheku  <kaz@ashi.footprints.net>
109    
110            * code/unix-bindings/wrap.c (mcvs-spawn): In the child process,
111            reset the signal handler for SIGCHLD to SIG_DFL before exec-ing
112            the new image. This is needed because CLISP set it to SIG_IGN,
113            which causes child reaping problems in spawned programs.
114            This should fix the ``No child processes'' problem when running
115            CVS from Meta-CVS.
116    
117    2003-02-11  Kaz Kylheku  <kaz@ashi.footprints.net>
118    
119            * code/memoize.lisp (remove-key-aux-rest, strip-lambda-list,
120            extract-tests, remove-tests, memoize-expander, factor-memo-labels,
121            define-memoized-function, memoized-labels): Documentation strings
122            added to this cryptic code.
123    
124    2003-02-02  Kaz Kylheku  <kaz@ashi.footprints.net>
125    
126            Make tag command work on whole tree if no arguments are given,
127            just like commit.
128    
129            * code/generic.lisp (mcvs-generic): no-fix-empty-filelist keyword
130            parameter renamed to global-if-empty-file-list, which more closely
131            reveals the purpose.
132            (mcvs-commit-wrapper): Use new keyword name.
133            (mcvs-tag-wrapper): Specify T value for :global-if-empty-filelist
134            argument, so the whole project is tagged by default if no arguments
135            are given.
136    
137    2003-02-01  Kaz Kylheku  <kaz@ashi.footprints.net>
138    
139            * code/unix-bindings/wrap.c (impl_spawn): Try waitpid again in a loop
140            while it returns -1, and errno is EINTR.
141            Reported by Johannes Grødem <johs@copyleft.no>.
142    
143    2003-01-30  Kaz Kylheku  <kaz@ashi.footprints.net>
144    
145            * code/posix.lisp: Move some (declaim inline) to the correct
146            location, before the function to be inlined.
147    
148            * code/clisp-unix.lisp: Likewise.
149            * code/cmucl-unix.lisp: Likewise.
150            * code/mapping.lisp: Likewise.
151    
152    2003-01-25  Kaz Kylheku  <kaz@ashi.footprints.net>
153    
154            * code/unix-bindings/wrap.c (mcvs_getcwd): If getcwd() returns
155            NULL, it only means that the buffer is too small if errno is also
156            set to ERANGE. This second condition was not being tested.
157            Reported by Johannes Grødem <johs@copyleft.no>.
158    
159            * code/clisp-unix.lisp (getcwd-error): New condition.
160            (initialize-instance (getcwd-error)): New method.
161            (getcwd): Raise getcwd-error condition if unix-funcs::getcwd
162            returns NIL.
163    
164    2003-01-15  Kaz Kylheku  <kaz@ashi.footprints.net>
165    
166            * code/unix-bindings/impl.c: File renamed to wrap.c.
167            (impl_null_pointer_p, impl_get_errno, impl_set_errno, impl_readdir,
168            impl_readlink, impl_stat, impl_lstat, impl_fstat, impl_getcwd,
169            impl_spawn): Prefix changed from ``impl_'' to ``mcvs_''.
170    
171            * code/unix-bindings/link.sh, code/unix-bindings/Makefile,
172            code/unix-bindings/unix.lisp: Updated accordingly.
173    
174    2003-01-13  Kaz Kylheku  <kaz@ashi.footprints.net>
175    
176            Support -k CVS option in merge and remerge commands.
177            Reported by Jamie Wellnitz.
178    
179            * code/mcvs-main.lisp (*merge-options*, *remerge-options*): Add
180            one argument -k option.
181    
182            * code/merge.lisp (mcvs-merge): Support extra argument for passing
183            command options. Pass them down to mcvs-update.
184            (mcvs-merge-wrapper, mcvs-remerge-wrapper): Don't ignore command
185            options but pass them to mcvs-merge.
186    
187    2003-01-13  Kaz Kylheku  <kaz@ashi.footprints.net>
188    
189            * code/install.sh: More fail-safe way to locate library directory;
190            works even when clisp executable is a symlink.  Thanks to Sam
191            Steingold, CLISP maintainer, for tip.
192    
193    2003-01-12  Kaz Kylheku  <kaz@ashi.footprints.net>
194    
195            Hard link sync optimization.
196    
197            * code/mapping.lisp (mapping-synchronize): New optional parameter,
198            specifies map to use instead of reading *map-local*.
199    
200            * code/mcvs-generic.lisp (mcvs-generic): Pass extra parameter to
201            mapping-synchronize to only sync the selected subset of files.
202    
203    2003-01-01  Kaz Kylheku  <kaz@ashi.footprints.net>
204    
205            * code/unix-bindings/impl.c (impl_spawn): For Cygwin, re-implemented
206            this function as a wrapper for the spawnvp function. The combination
207            of fork + execvp + waitpid does not work because waitpid is broken;
208            it waits for thep rocess, but then returns -1 and sets errno
209            to ECHILD.
210    
211    2002-12-27  Kaz Kylheku  <kaz@ashi.footprints.net>
212    
213            * code/options.lisp (process-cvs-options): The version number
214            now has three components.
215    
216    2002-12-13  Kaz Kylheku  <kaz@ashi.footprints.net>
217    
218            * code/install.sh: Now works under CLISP installations which
219            call the CLISP executable lisp.exe rather than lisp.run.
220            This is the case under Cygwin as of CLISP 2.30 or so.
221    
222    2002-12-03  Kaz Kylheku  <kaz@ashi.footprints.net>
223    
224            * code/sync.lisp (synchronize-files): Call exec-check using
225            file info object, rather than file name. This cuts in half
226            the number of calls to stat().
227    
228    2002-12-03  Kaz Kylheku  <kaz@ashi.footprints.net>
229    
230            Discontinuing use of CLISP's ext:run-program function in favor
231            of a new workalike which doesn't rely on the shell interpreter.
232    
233            * code/unix-bindings/unix.lisp (unix-funcs:spawn): New C call out
234            function (unix-funcs:run-program): New function, implemented using
235            spawn.
236    
237            * code/unix-bindings/impl.c (impl_spawn): New function; wraps
238            up fork, execvp and waitpid.
239    
240            * code/clisp-unix.lisp: Switch from ext:run-program to
241            unix-funcs:run-program.
242    
243    2002-11-20  Kaz Kylheku  <kaz@ashi.footprints.net>
244    
245            Some security fixes.  Funny I didn't think of this sooner!
246    
247            * code/types.lisp (types-read): Make sure *read-eval* is bound to
248            nil when calling READ.
249    
250            * code/mapping.lisp (mapping-read-raw-map, displaced-path-read):
251            Likewise.
252    
253    
254    2002-11-16  Kaz Kylheku  <kaz@ashi.footprints.net>
255    
256            * code/posix.lisp (invoke-editor-on): Honor the CVSEDITOR and VISUAL
257            environment variables, not just EDITOR.
258    
259    2002-11-09  Kaz Kylheku  <kaz@ashi.footprints.net>
260    
261            * code/link.lisp (mcvs-link): Revamped link command to behave properly
262            when the destination object is a directory. It must create the link in
263            that directory, rather than try to create a link with that name.
264            Plus handles various tricky cases. Trailing slash in destination name,
265            destination that is a directory within target directory, attempted
266            link creation in MCVS etc.
267    
268    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
269    
270            More support for -n option.
271    
272            * code/mcvs-main.lisp (*usage*): Document -n option.
273    
274            * code/move.lisp (mcvs-move-wrapper): Remove bogus error check
275            for presence of global options.
276    
277            * code/options.lisp (honor-dry-run): New macro for conditionally
278            not executing some forms if it's a dry run, and logging some
279            debugging information.
280    
281            * code/sync.lisp (synchronize-files): Honor dry run.
282    
283            * code/mapping.lisp (mapping-synchronize, mapping-update): Likewise.
284    
285    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
286    
287            Start of support for global option -n (dry run).
288    
289            * code/options.lisp (*dry-run-option*): New boolean variable.
290            (process-cvs-options): Look for -n and set *dry-run-option*.
291    
292            * code/types.lisp (types-write): Do not write file if *dry-run-option*
293            is true.
294    
295            * code/types.lisp (mapping-write): Likewise.
296    
297            * code/add.lisp (mcvs-add): When calling types-let-user-edit,
298            temporarily disable the dry run option, so that TYPES-NEW can
299            be written. When the dry run option is in effect, do not try
300            to cvs add the TYPES file.
301    
302    2002-11-03  Kaz Kylheku  <kaz@ashi.footprints.net>
303    
304            * code/branch.lisp (*branch-help*): New string constant.
305    
306            * code/mcvs-main.lisp (*mcvs-command-table*): *branch-help* hooked in.
307    
308    2002-11-02  Kaz Kylheku  <kaz@ashi.footprints.net>
309    
310            * code/mcvs-main (*args*, *options*): Unused variables removed.
311            (mcvs-execute): Global option processing code removed.
312    
313            * code/options.lisp (*print-usage*): New boolean variable; tells
314            mcvs-execute to print usage and terminate.
315            (filter-mcvs-options): New function. Does the job that
316            filter-global-options did.
317            (process-cvs-options): Does the global option processing that
318            was previously in mcvs-execute.
319            (filter-global-options): Now just calls filter-mcvs-options,
320            process-cvs-options.
321    
322    2002-11-02  Kaz Kylheku  <kaz@ashi.footprints.net>
323    
324            * INSTALL: Include caveat about GCC 3 problems.
325    
326    2002-10-30  Kaz Kylheku  <kaz@ashi.footprints.net>
327    
328            * code/prop.lisp (mcvs-prop): If there are no options specified,
329            don't do anything.
330    
331    2002-10-30  Kaz Kylheku  <kaz@ashi.footprints.net>
332    
333            * code/unix-bindings/unix.lisp: Rewrote defpackage to take only
334            selected symbols from CLISP's FFI package rather using the whole
335            thing. FFI, and the packages it uses, are moving targets.
336            The symbol def-c-call-out is interned in unix-funcs.
337            (unix-funcs:def-c-call-out): New internal macro. CLISP says that
338            ffi:def-c-call-out is obsolescent.
339    
340            * code/unix-bindings/Makefile: The ``clean'' target removes
341            unix.lib, not only unix.fas.
342    
343    2002-10-27  Kaz Kylheku  <kaz@ashi.footprints.net>
344    
345            Bugfix to the directory restructuring code. A clobbering
346            file add was not actually removing the clobbered file, but leaving
347            it up to the synchronization algorithm, so the time-stamp would
348            decide whether the local file gets clobbered by the repository one,
349            or whether it wins.
350    
351            * code/mapping.lisp (mapping-update): Logic for handling added
352            file ensures that a clobbered local file is removed first.
353    
354    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
355    
356            New link command for creating symlinks.
357    
358            * mcvs-main.lisp (*link-options*): New option constant.
359            (*mcvs-command-table*): Entries for new command added.
360            (*usage*): Help text added.
361    
362            * link.lisp: New file.
363            (mcvs-link, mcvs-link-wrapper): New functions.
364    
365    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
366    
367            * code/grab.lisp (*grab-help*): Rewritten.
368    
369            * code/checkout.lisp (*export-help*): Formatted for 80 columns.
370    
371    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
372    
373            * code/mcvs-main.lisp (*usage*): Expand tabs to spaces.
374    
375            * code/add.lisp (*add-help*): Likewise.
376    
377            * code/remove.lisp (*remove-help*): Likewise.
378    
379            * code/create.lisp (*create-help*): Likewise.
380    
381    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
382    
383            * code/purge.lisp (mcvs-purge): Get rid the processing of the
384            nonexistent -n option from purge code.  The global option -n does an
385            adequate job of implementing a dry run.
386    
387    2002-10-26  Kaz Kylheku  <kaz@ashi.footprints.net>
388    
389            * code/mapping.lisp (mapping-removed-files): Skip over the MCVS/CVS
390            directory, which can contain CVS-generated files with F- names and a ,t
391            suffix. These trip up the algorithm.
392    
393    2002-10-21  Kaz Kylheku  <kaz@ashi.footprints.net>
394    
395            Add help to move command.
396    
397            * code/mcvs-main.lisp (*mcvs-command-table*): Added *move-help*.
398    
399            * code/move.lisp (*mcvs-help*): New constant.
400    
401    2002-10-20  Kaz Kylheku  <kaz@ashi.footprints.net>
402    
403            Fix broken ``filt -r''.
404    
405            * code/mapping.lisp (mapping-read-raw-map): New function; reads
406            map from stream and does sanity check.
407            (mapping-read): Argument can be a filename or stream. Call to
408            mapping-read-raw-map to factor out common code for both cases.
409    
410            * code/filt.lisp (filt-select-map): This was still just
411            reading the raw structure from the cvs coprocess, which worked under
412            the old map format, when the internal and external representations
413            were the same. Now it calls mapping-read on the stream.
414    
415    2002-10-19  Kaz Kylheku  <kaz@ashi.footprints.net>
416    
417            * UPGRADE-EXISTING: New file.
418    
419    2002-10-19  Kaz Kylheku  <kaz@ashi.footprints.net>
420    
421            * code/mcvs-main.lisp: Clear out *modules* list before requiring
422            modules. This is needed so that mcvs-upgrade works, because there
423            is already a populated list in the Lisp image.
424    
425    2002-10-17  Kaz Kylheku  <kaz@ashi.footprints.net>
426    
427            Detect failure to start text editor.
428    
429            * code/posix.lisp (*editor*): Change name to *mcvs-editor*, due
430            to name-clash with a CLISP extension!
431    
432            * code/mcvs-main.lisp: Likewise.
433    
434            * code/types.lisp (types-let-user-edit): Provide an individual
435            restart-case block around the invocation of the text editor,
436            which lets the user re-try the editor.
437    
438    2002-10-14  Kaz Kylheku  <kaz@ashi.footprints.net>
439    
440            Compiler warning fix.
441    
442            * code/posix.lisp (*argument-limit*): Constant moved here.
443    
444            * code/clisp-unix.lisp (*argument-limit*): Constant removed.
445    
446            * code/cmucl-unix.lisp (*argument-limit*): Likewise.
447    
448    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
449    
450            * code/install.sh: generate a script called mcvs-upgrade.
451    
452    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
453    
454            * code/prop.lisp (mcvs-prop): Read *mcvs-map*, not *mcvs-map-local*.
455    
456    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
457    
458            * code/mcvs-main.lisp (*watchers-options*): New constant.
459            (*edit-options*): Likewise.
460            (*unedit-options*): Likewise.
461            (*editors-options*): Likewise.
462            (*mcvs-command-table*): Added watchers, edit unedit, and editors
463            commands.
464            (*usage*): Updated.
465    
466            * code/generic.lisp (mcvs-watchers-wrapper, mcvs-edit-wrapper,
467            mcvs-unedit-wrapper, mcvs-editors-wrapper): New functions.
468    
469    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
470    
471            * code/mcvs-main.lisp (*usage*): Describe export and watch commands.
472    
473    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
474    
475            * code/mcvs-main.lisp (*watch-options*): New constant.
476            (*mcvs-command-table*): New entry for watch command.
477    
478            * code/watch.lisp: New file.
479    
480    2002-10-13  Kaz Kylheku  <kaz@ashi.footprints.net>
481    
482            * code/mcvs-main.lisp (*export-options*): New constant.
483            (*mcvs-command-table*): New entries for export command.
484    
485            * code/checkout.lisp (mcvs-checkout): New keyword to specify export
486            behavior.  This causes cvs export to be run instead of checkout,
487            and the MCVS directory to be deleted after.
488            (mcvs-checkout-wrapper): Common function factored out into a flet.
489            (mcvs-export-wrapper): New function. Verifies that one of -D and -r
490            options is present, then runs mcvs-checkout, specifying export
491            behavior.
492    
493    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
494    
495            * code/mcvs-main.lisp (*update-options*): Added -C option.
496    
497            * code/update.lisp (mcvs-update): Fall back on the mcvs-generic
498            if --metaonly or --nometa is specified to run CVS on specific
499            files.
500    
501    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
502    
503            * code/filt.lisp (mcvs-filt): Do not filter F- names if
504            immediately preceded by MCVS/ prefix.
505    
506    2002-10-12  Kaz Kylheku  <kaz@ashi.footprints.net>
507    
508            * code/clisp-unix.lisp (execute-program): Provide debug traces
509            for command execution.
510    
511  2002-10-09  Kaz Kylheku  <kaz@ashi.footprints.net>  2002-10-09  Kaz Kylheku  <kaz@ashi.footprints.net>
512    
513          * code/add.lisp (*add-help*): Remove spurious text cut and pasted from          * code/add.lisp (*add-help*): Remove spurious text cut and pasted from

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

  ViewVC Help
Powered by ViewVC 1.1.5