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

  ViewVC Help
Powered by ViewVC 1.1.5