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

  ViewVC Help
Powered by ViewVC 1.1.5