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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.72 - (show annotations)
Mon Mar 18 21:51:42 2002 UTC (12 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.71: +17 -0 lines
* posix.lisp (parse-posix-namestring): New function. Converts POSIX
path to CL Path object.
* rcsparse.lisp: New file
(rcs-admin, rcs-file, rcs-token, rcs-token-stream): New structs.
(rcs-peek-token, rcs-read-token): New generic functions.
(rcs-extract-id-sym-or-num, rcs-extract-string,
rcs-match-optional, rcs-match-token, rcs-parse, rcs-parse-admin,
rcs-special-p): New functions.

* convert.lisp (classify-tags): Work with association list rather
than raw strings.
(mcvs-convert): Use rcs-parse to extract tags. Fix call to
mapping-generate name. Use parse-posix-namestring when opening
version file. Generate informative chatter.
1 2002-03-18 Kaz Kylheku <kaz@ashi.footprints.net>
2
3 * posix.lisp (parse-posix-namestring): New function. Converts POSIX
4 path to CL Path object.
5 * rcsparse.lisp: New file
6 (rcs-admin, rcs-file, rcs-token, rcs-token-stream): New structs.
7 (rcs-peek-token, rcs-read-token): New generic functions.
8 (rcs-extract-id-sym-or-num, rcs-extract-string,
9 rcs-match-optional, rcs-match-token, rcs-parse, rcs-parse-admin,
10 rcs-special-p): New functions.
11
12 * convert.lisp (classify-tags): Work with association list rather
13 than raw strings.
14 (mcvs-convert): Use rcs-parse to extract tags. Fix call to
15 mapping-generate name. Use parse-posix-namestring when opening
16 version file. Generate informative chatter.
17
18 2002-03-15 Kaz Kylheku <kaz@ashi.footprints.net>
19
20 * remove.lisp (mcvs-remove): More detailed error checking.
21 Checks for remove attempts against MCVS/ area, removes of local
22 files not versioned under Meta-CVS, and nonexistent files.
23
24 2002-03-15 Kaz Kylheku <kaz@ashi.footprints.net>
25
26 * add.lisp (mcvs-add): Error message changed to tell user to use
27 -R to add directory.
28
29 * remove.lisp (mcvs-remove): New generalized boolean parameter
30 indicates to do a recursive remove. This is controlled by the
31 -R option which already exists. Behavior changed to not act
32 on directories unless recursion is explicitly requested.
33 (mcvs-remove-wrapper): Extract "R" option, pass down new boolean
34 to mcvs-remove.
35
36 2002-03-15 Kaz Kylheku <kaz@ashi.footprints.net>
37
38 * remove.lisp (mcvs-remove-wrapper): Remove bogus error check.
39
40 2002-03-14 Kaz Kylheku <kaz@ashi.footprints.net>
41
42 * checkout.lisp (mcvs-checkout): Bugfix: must use checkout-dir, not
43 module, when testing whether directory exists or was created properly.
44
45 2002-03-14 Kaz Kylheku <kaz@ashi.footprints.net>
46
47 Update takes file arguments now.
48
49 * update.lisp (mcvs-update): If filename arguments are given, then
50 just call mcvs-generic to do the work, but suppress the operation on
51 meta files. If no filename arguments are given, then update everything.
52 If the -p option is present, no synchronization is needed, before or
53 after.
54 (mcvs-update-wrapper): Pass command arguments down to mcvs-update.
55
56 * mcvs-main.lisp (*update-options*): Add "p" option.
57
58 * generic.lisp (mcvs-generic): New keyword parameter need-sync-after,
59 a generalized boolean which can tell the function to do a
60 mapping-synchronize after executing the CVS command.
61
62 2002-03-14 Kaz Kylheku <kaz@ashi.footprints.net>
63
64 * filt.lisp (filt-select-map): Do allow a date and revision to be
65 specified; the revision could be a branch tag.
66
67 2002-03-13 Kaz Kylheku <kaz@ashi.footprints.net>
68
69 * mapping.lisp (malformed-map): New function.
70 (mapping-dupe-check): Perform extra error checks when reading
71 mapping, and turn them into a condition with a ``nice'' error message.
72
73 2002-03-13 Kaz Kylheku <kaz@ashi.footprints.net>
74
75 * mcvs-filt.lisp (filt-select-map): Handle error gracefully
76 when reading map. It's easy to give CVS is a nonexistent tag.
77
78 2002-03-13 Kaz Kylheku <kaz@ashi.footprints.net>
79
80 The filt command takes arguments to select alternate revision
81 of map.
82
83 * mcvs-main.lisp (*filt-options*): New constant.
84 (*mcvs-command-table*): Updated with new options.
85 (mcvs-debug-shell): Restart name changed during debugging of filt
86 changes.
87
88 * filt.lisp (filt-select-map): New function. Loads either the
89 local mapping, or retrieves an alternate mapping from CVS based
90 on command line options.
91 (mcvs-filt): Use filt-select-map rather than mapping-read.
92
93 2002-03-13 Kaz Kylheku <kaz@ashi.footprints.net>
94
95 * generic.lisp (mcvs-generic): Add .cvsignore to the list of
96 metafiles.
97
98 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
99
100 * import.lisp (mcvs-import): Create a .cvsignore file for ignoring
101 MAP-LOCAL.
102
103 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
104
105 Fix trailing slash bug in mcvs mv.
106
107 * move.lisp (simple-move-to-dir): Canonicalize path after catenating
108 destination and file base name. This nukes a double slash if
109 we move to a name with a trailing slash.
110 (move-guts): Treat a destination name that has a trailing slash
111 as a directory, unless it exists already as a non-directory.
112
113 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
114
115 * mcvs-main.lisp (*cvs-options*): Added "error-terminate" and
116 "error-continue".
117 (*usage*): Update and reformat help text.
118 (mcvs-execute): Process "error-terminate" and "error-continue"
119 options.
120
121 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
122
123 * mapping.lisp (mapping-update): Messages related to moving,
124 adding or removing files promoted to terse level, so only -Q
125 can suppress them.
126
127 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
128
129 * update.lisp (mcvs-update): Changing level of chatter messages.
130 * move.lisp (mcvs-move): Likewise.
131 * add.lisp (mcvs-add): Likewise.
132 * remove.lisp (mcvs-remove): Likewise.
133 * checkout.lisp (mcvs-checkout): Likewise.
134 * generic.lisp (mcvs-generic): Likewise.
135 * import.lisp (mcvs-import): Likewise.
136 * mapping.lisp (mapping-dupe-check): Likewise.
137 (mapping-update): Likewise.
138
139 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
140
141 Support for -q, -Q and -e global options.
142
143 * posix.lisp (*editor*): New special variable.
144 (edit-file): Check *editor* variable; if not nil, use it.
145
146 * mcvs-main.lisp (*usage*): Update help text.
147 (mcvs-execute): Set *mcvs-chatter-level* according to -q or -Q.
148 Set *editor* if -e is specified.
149
150 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
151
152 * mcvs-main.lisp (*cvs-options*): Remove obsolete "a".
153 (*cvs-options-arg*): Add missing "r".
154 (*usage*): New constant, help text.
155 (mcvs-execute): Process help and version command line options.
156
157 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
158
159 * options.lisp (parse-opt): Make error messages more consistent.
160
161 2002-03-12 Kaz Kylheku <kaz@ashi.footprints.net>
162
163 * find-bind.lisp (find-bind): Make rem-var optional; sometimes
164 the user might not care about the remaining unmatched list.
165
166 2002-03-11 Kaz Kylheku <kaz@ashi.footprints.net>
167
168 * find-bind.lisp (find-bind): Documentation string change. Clarify
169 that default values are substituted whenever a variable would
170 otherwise be bound to the value NIL, even through an explicit
171 match.
172
173 2002-03-11 Kaz Kylheku <kaz@ashi.footprints.net>
174
175 Sane filtering of -d option in checkout.
176
177 * find-bind.lisp (find-bind): Variable bindings can specify
178 a third element, which provides a default value for any variables
179 that turn out NIL.
180
181 * checkout.lisp (mcvs-checkout): Filter out the -d dir option,
182 and use it to override the name of the checkout directory,
183 the way CVS checkout does it.
184
185 2002-03-11 Kaz Kylheku <kaz@ashi.footprints.net>
186
187 Bugfix: mcvs add was not processing existing :ignore's in MCVS/TYPES.
188
189 * add.lisp (mcvs-add): Use old types as well as new types
190 to filter for ignores.
191
192 2002-03-11 Kaz Kylheku <kaz@ashi.footprints.net>
193
194 * find-bind.lisp: New file.
195 (find-bind-extract-vals): New function.
196 (find-bind): New macro.
197
198 * error.lisp (restart-destructure): Macro removed.
199 (mcvs-error-handler): Uses generic find-bind instead of
200 restart-destructure.
201
202 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
203
204 * filt.lisp (mcvs-filt): Bugfix: do not stop processing line
205 if F- file name is not found in hash table.
206
207 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
208
209 Commit is handled through mcvs-generic, so it can take
210 filename arguments, and honor --nometa.
211
212 * commit.lisp: File removed.
213 (mcvs-commit): Function removed.
214 (mcvs-commit-wrapper): Moved to generic.lisp.
215
216 * generic.lisp (mcvs-commit-wrapper): Moved from commit.lisp,
217 changed to invoke mcvs-generic.
218 (mcvs-generic): Only add TYPES file to list if it actually
219 exists.
220
221 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
222
223 New --nometa command line option.
224
225 * mcvs-main.lisp (*cvs-options*): Add "nometa" to list.
226 (mcvs-execute): Filter global options to recognize
227 Meta-CVS-specific ones.
228
229 * options.lisp (*nometa-option*): New special variable.
230 (filter-global-options): New function.
231
232 * generic.lisp (mcvs-generic): Honor *nometa-option* special
233 variable.
234
235 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
236
237 * generic.lisp (mcvs-generic): Make sure TYPES file is
238 included in list of files.
239
240 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
241
242 * mcvs-main.lisp (*add-options*): Support -R option for add.
243 Thus, recursive add works now.
244
245 2002-03-09 Kaz Kylheku <kaz@ashi.footprints.net>
246
247 Fix mcvs filt so it handles suffixed F- files properly.
248
249 * filt.lisp (make-filt-hash): New function.
250 (mcvs-filt): After matching hex digits, also check for
251 a suffix match.
252
253 2002-02-17 Kaz Kylheku <kaz@ashi.footprints.net>
254
255 Support for file type keyword treatment under mcvs add.
256
257 * add.lisp (mcvs-add): Restructured to build up list of new file
258 suffixes, allow the user to edit the file which determines how
259 they are treated, filter out ignored files and pass -k options
260 to multiple cvs adds.
261
262 * types.lisp (*mcvs-new-types*): New constant.
263 (*types-comments*): Constant moved here from import.lisp.
264 (types-remove-ignores): New function. Code factored out from
265 mcvs-import.
266 (types-let-user-edit): Likewise.
267 (types-make-cvs-adds): New function.
268
269 * import.lisp (*types-comments*): Constant removed. Moved to
270 types.lisp
271 (mcvs-import): Code factored out to new functions in types.lisp, which
272 are also used by add.lisp.
273
274 2002-02-17 Kaz Kylheku <kaz@ashi.footprints.net>
275
276 * print.lisp: New file.
277 (print-assoc-list): New function.
278 * types.lisp: Use print-assoc-list to nicely print the types.
279 * import.lisp (mcvs-import): Don't bother getting user to
280 edit the types if the type list is empty. In fact, don't
281 even create the file.
282
283 2002-02-17 Kaz Kylheku <kaz@ashi.footprints.net>
284
285 * add.lisp (mcvs-add): Use new form of mapping-generate-name.
286
287 2002-02-17 Kaz Kylheku <kaz@ashi.footprints.net>
288
289 * import.lisp (mcvs-import): Fix broken restart for re-editing
290 the types file.
291 (*types-comments*): Drastically shorten the help text.
292
293 2002-02-16 Kaz Kylheku <kaz@ashi.footprints.net>
294
295 Support for filetypes in import.
296
297 * posix.lisp (suffix): Separator character parameter is optional;
298 multiple occurences of character lead to one big suffix like
299 ".tar.gz" instead of ".gz". A leading dot means it's not a suffix but
300 a hidden file like ".exrc".
301 (edit-file): New function, brings up text editor for specified file.
302
303 * clisp-linux.lisp (env-lookup): New function for environment
304 variable lookup.
305
306 * types.lisp: New source file.
307 (*mcvs-types-name*, *mcvs-types*): New constants for TYPES filename.
308 (types-read, types-write, types-sanity-check,
309 types-to-import-wrapper-args): New functions.
310
311 * import.lisp (*types-comments*): New constant.
312 (mcvs-import): Restructured to build up list of file suffixes,
313 allow the user to edit the file which determines how they
314 are treated, filter out ignored files and pass -W options to cvs import
315 to handle the rest. Failed cvs import is turned into restartable
316 condition.
317
318 * mapping.lisp (mapping-generate-name): Takes a suffix parameter.
319 The F-files now carry a suffix obtained from the original file,
320 because I have concluded that this was the only reasonable way
321 to integrate with CVS.
322
323 2002-02-16 Kaz Kylheku <kaz@ashi.footprints.net>
324
325 * add.lisp (mcvs-add): Last change completely broke add due
326 to not breaking out of the retry loop.
327
328 2002-02-13 Kaz Kylheku <kaz@ashi.footprints.net>
329
330 * move.lisp (mcvs-move): If the mapping-update operation returns
331 nil, or terminates by a non-local jump, restore the filemap.
332 * mapping.lisp (mapping-update): When returning normally,
333 return t. When returning after doing a rollback, return nil.
334
335 2002-02-13 Kaz Kylheku <kaz@ashi.footprints.net>
336
337 * error.lisp (mcvs-error-handler): Bugfix. We were closing over
338 a binding of the iteration variable of a dolist, which has only
339 one binding over the entire loop.
340
341 * mapping.lisp (mapping-update): Gathers up info all local
342 clobbered files, and then throw the error. Provides restart
343 which allows user to print the list of clobbered files, and
344 a restart which allows the user to have those files clobbered.
345
346 2002-02-13 Kaz Kylheku <kaz@ashi.footprints.net>
347
348 * checkout.lisp (mcvs-checkout-wrapper): Bugfix for last bugfix.
349
350 2002-02-11 Kaz Kylheku <kaz@ashi.footprints.net>
351
352 * checkout.lisp (mcvs-checkout-wrapper): Bugfix for bad
353 destructuring-bind if there are no arguments.
354
355 2002-02-10 Kaz Kylheku <kaz@ashi.footprints.net>
356
357 * mapping.lisp (mapping-difference): Reformatted documentation string.
358 (mapping-update): Implemented a continue restart which rolls back
359 the changes done to the local filesystem.
360
361 2002-02-10 Kaz Kylheku <kaz@ashi.footprints.net>
362
363 * error.lisp (mcvs-error-handler): Rearranging the menu,
364 so "T" is clumped with the main options, and any special restarts
365 are clearly separated. Changed wording.
366
367 2002-02-10 Kaz Kylheku <kaz@ashi.footprints.net>
368
369 * update.lisp (mcvs-update): Re-print the "Invoking CVS" chatter
370 if the user re-tries the error.
371
372 * add.lisp (mcvs-add): CVS failure is now a restartable error;
373 user can decide whether to roll back the effects or retry the
374 CVS add, or terminate to keep the effects anyway despite
375 the failed add.
376
377 2002-02-10 Kaz Kylheku <kaz@ashi.footprints.net>
378
379 * install.sh: Stop the script if there are compilation errors.
380
381 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
382
383 * error.lisp (*mcvs-errors-occured-p*): New special variable.
384 (mcvs-error-handler): Set *mcvs-errors-occured-p* to T.
385 * mcvs-main.lisp (mcvs): Take *mcvs-errors-occured-p* into
386 account in computing termination status.
387
388 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
389
390 * update.lisp: Remove spurious newlines from error messages.
391 * add.lisp: Likewise.
392 * options.lisp: Likewise.
393 * mapping.lisp: Likewise.
394
395 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
396
397 Adding some restarts around cvs update.
398
399 * posix.lisp (execute-command-xargs): Bail with nil return
400 value if any command line fails.
401
402 * update.lisp (mcvs-update): Tests return value of execute-program
403 and signal condition if it's nil. Provides a continue restart
404 as well as a retry restart to try the command again.
405
406 * error.lisp (mcvs-error-handler): Show retry restarts as
407 a special menu item "R".
408
409 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
410
411 Added a much improved error handling routine in anticipation
412 of better use of restarts.
413
414 * error.lisp: New file
415 (restart-destructure): New macro.
416 (*mcvs-error-treatment*): Special variable, moved here from
417 mcvs-main.
418 (mcvs-error-handler): New function.
419
420 * mcvs-main.lisp (mcvs-top-error-handler): Function removed.
421 (mcvs-execute): Bind error to new mcvs-error-handler instad
422 of mcvs-top-error-handler.
423
424 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
425
426 * mcvs-main.lisp (*mcvs-command-table*): The "stat" abbreviation
427 for status command added.
428
429 2002-02-09 Kaz Kylheku <kaz@ashi.footprints.net>
430
431 Hooking conversion tool into command structure.
432
433 * mcvs-main.lisp (*convert-options*): New constant.
434 (*mcvs-command-table*): New entry for mcvs-convert-wrapper.
435 * convert.lisp (mcvs-convert): Fix reference to nonexistent variable.
436 (mcvs-convert-wrapper): New function.
437
438 2002-02-08 Kaz Kylheku <kaz@ashi.footprints.net>
439
440 Beginning work on repository conversion utility.
441
442 * convert.lisp: New file. Contains conversion utility
443 to make an Meta-CVS repository from an ordinary CVS repository,
444 while preserving all history, tags and branches.
445 (remove-attic-component, classify-tags, read-tags,
446 mcvs-convert): New functions.
447
448 * posix.lisp (suffix): New function. Computes suffix of file.
449 (execute-program-xargs): New optional parameter, for specifying
450 fixed part added at the end of each generated command line.
451
452 * mapping.lisp (*mcvs-map-name*, *mcvs-local-map-name*): New constants.
453 (*mcvs-map*, *mcvs-map-local*): Redefined in terms of new constants.
454 (mapping-generate-name): New key parameter no-dir for not adding
455 the directory prefix.
456
457 2002-02-08 Kaz Kylheku <kaz@ashi.footprints.net>
458
459 * checkout.lisp (mcvs-checkout): Ensure local mapping is
460 sorted when written out, for easier comparisons.
461
462 2002-02-07 Kaz Kylheku <kaz@ashi.footprints.net>
463
464 * sync.lisp (synchronize-files): Return :dir symbol when either
465 argument is a directory.
466 * mapping.lisp (mapping-synchronize): Chatter output messages
467 are shorter. Handles :dir return value from synchronize-files.
468 (mapping-update): New sanity checks for moved and added
469 files, to avoid clobbering local files. Removed redundant
470 call to ensure-directories-exit in move logic, because
471 synchronize-files will do it anyway. Chatter messages reordered
472 to occur before their corresponding action is done.
473
474 2002-02-07 Kaz Kylheku <kaz@ashi.footprints.net>
475
476 Improve error handling, and builtin ``debug shell''.
477
478 * mcvs-main.lisp (*mcvs-error-treatment*): Special variable
479 can have new domain value, namely :decline.
480 (mcvs-top-error-handler): Print error message when terminating
481 non-restartable error. Handle new :decline treatment by
482 simply returning.
483 (mcvs-debug-shell): Set *mcvs-error-treatment* to :decline
484 so that errors are caught by debugger.
485
486 2002-02-04 Kaz Kylheku <kaz@ashi.footprints.net>
487
488 * mapping.lisp (mapping-sort): Removed function.
489 (mapping-write): Sort written map by F- file names,
490 not by path names. This is far better for merging, because
491 files stay in the same place when they are renamed.
492
493 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
494
495 Added status, log and annotate.
496
497 * mcvs-main.lisp: (*log-options*, *status-options*,
498 *annotate-options*): New constants.
499 (*mcvs-command-table*): Add new entries.
500
501 * generic-lisp (mcvs-log-wrapper, mcvs-status-wrapper,
502 mcvs-annotate-wrapper): New functions.
503
504 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
505
506 Added tag command.
507
508 * diff.lisp: File renamed to generic.lisp.
509 (mcvs-diff): Function renamed to mcvs-generic.
510
511 * generic.lisp (mcvs-generic): Function no longer dedicated to
512 diffing only; takes CVS command to execute as an argument,
513 also takes arguments and files as separate lists.
514 (mcvs-diff-wrapper): Modified to invoke mcvs-generic properly.
515 (mcvs-tag-wrapper): New function, uses mcvs-generic to implement
516 tag command.
517
518 * mcvs-main.lisp (*tag-options*): New constant.
519 (*mcvs-command-table*): New entry for tag command.
520
521 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
522
523 Added workaround for operating system argument passing limitations,
524 resembling the Unix xargs utility. Also, trimmed some fat
525 from the basename function.
526
527 * clisp-linux.lisp: (*argument-limit*): New constant added.
528 (arglist-to-command-string): Function removed.
529 (execute-program): Function removed.
530 (shell-interpreter): New function, wrapper for CLISP's shell
531 function, turns exit status into T (success) or NIL (failure).
532
533 * diff.lisp (mcvs-diff): Uses execute-program-xargs instead
534 of execute-program.
535
536 * posix.lisp (basename): Does not canonicalize path name. This
537 turns out to be an unnecessary performance hit in some cases.
538 (arglist-to-command-string): New function. Similar to what was
539 removed from clisp-linux, but this one properly escapes all
540 shell metacharacters.
541 (execute-program): New function, calls shell-interpreter.
542 (execute-program-xargs): New function. Takes two argument lists.
543 Forms one or more command lines by combining the first argument list
544 with one or more pieces of the second argument list, and
545 executes each command. The length of the pieces is determined
546 by the argument passing limit.
547
548 * dirwalk.lisp (ensure-directories-gone): Add use of
549 canonicalize-path because basename doesn't do it.
550
551 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
552
553 Algorithmic efficiency improvements. No longer using
554 abstract set operations to update file structure or find
555 duplicates in the maps. Could still streamline the sorting.
556
557 * mapping.lisp (mapping-sort): Express more succinctly using key.
558 (mapping-dupe-check): Rewrite using loop over sorted lists.
559 (mapping-difference): New function for computing mapping change.
560 (mapping-update): Modify to use mapping-difference.
561
562 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
563
564 * mapping.lisp (mapping-update): When moving files, ensure
565 that the target is unlinked if it exists.
566
567 * move.lisp (simple-rename): No longer do target unlinking
568 here. Also bugfix: it wasn't handling renames of directories
569 containing just one file.
570
571 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
572
573 * mapping.lisp (mapping-dupe-check): New function for
574 detecting duplicate objects or paths in a mapping.
575 (mapping-sane-p): Function removed.
576 (mapping-read): Use mapping-dupe-check to verify a map
577 when asked by the sanity-check keyword.
578 (mapping-update): Specify sanity check when reading MCVS/MAP.
579
580 * checkout.lisp (mcvs-checkout): Checkout also performs
581 sanity check.
582
583 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
584
585 * mcvs-main.lisp (mcvs): Use CLISP's exit function correctly
586 to establish proper termination status.
587
588 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
589
590 * mcvs-main.lisp (mcvs-execute): Parse command-specific options
591 properly based on knowledge of each command's set of options.
592 (parse-args): Function removed.
593
594 * options.lisp (parse-opt): Correctly process long options with
595 arguments. Argument is part of the string, separated by = symbol.
596
597 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
598
599 * options.lisp (parse-opt): When multiple options characters are
600 bunched up into one argument, and one of them other than the
601 last one takes an argument, then the remaining ones are
602 considered to constitute a string which is an argument to that
603 option. For instance -y32 means -y 32, not -y -3 -2, assuming
604 that y is an option that requires an argument.
605
606 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
607
608 Top level handler terminates by non-local exit back to
609 mcvs function, rather than by calling (exit).
610
611 * mcvs-main.lisp (mcvs-top-error-handler): Restructured
612 to call (throw 'mcvs-exit t).
613 (mcvs-execute): Ensure that NIL is returned by normal exit.
614 (mcvs): Catches 'mcvs-exit throw, and calls (exit 0) or (exit 1)
615 accordingly.
616
617
618 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
619
620 Renamed all ``filemap-'' functions to ``mapping-'' prefix.
621
622 * mapping.lisp (filemap-generate-name, filemap-sort,
623 filemap-extract-paths, filemap-lookup, filemap-prefix-lookup,
624 filemap-prefix-matches, filemap-object-lookup,
625 filemap-same-object-p, filemap-same-path-p, filemap-moved-p,
626 filemap-rename-files, filemap-sane-p): Old names removed.
627 (mapping-generate-name, mapping-sort,
628 mapping-extract-paths, mapping-lookup, mapping-prefix-lookup,
629 mapping-prefix-matches, mapping-object-lookup,
630 mapping-same-object-p, mapping-same-path-p, mapping-moved-p,
631 mapping-rename-files, mapping-sane-p): New names created.
632 (mapping-read, mapping-write, mapping-synchronize,
633 mapping-update): Edit calls to renamed functions.
634 * add.lisp (mcvs-add): Likewise.
635 * diff.lisp (mcvs-diff): Likewise.
636 * filt.lisp (mcvs-filt): Likewise.
637 * import.lisp (mcvs-import): Likewise.
638 * move.lisp (simple-rename, simple-move-to-dir, move-guts): Likewise.
639 * remove.lisp (mcvs-remove): Likewise.
640
641 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
642
643 Factored out repeated code for reading and writing of the MAP and
644 MAP-LOCAL files.
645
646 * mapping.lisp (mapping-read, mapping-write): New functions.
647 (mapping-synchronize, mapping-update): Use new functions.
648 * move.lisp (mcvs-move): Likewise.
649 * filt.lisp (mcvs-filt): Likewise.
650 * add.lisp (mcvs-add): Likewise.
651 * remove.lisp (mcvs-remove): Likewise.
652 * checkout.lisp (mcvs-checkout): Likewise.
653 * diff.lisp (mcvs-diff): Likewise.
654 * import.lisp (mcvs-import): Likewise.
655
656 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
657
658 * filt.lisp (mcvs-filt): use *mcvs-dir* variable instead of
659 hard coding "MCVS" string.
660
661 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
662
663 * MCVS-PAPER: Renamed to Meta-CVS-PAPER
664
665 * README: Change all references to MCVS to Meta-CVS, the
666 new official name of the program.
667 * add.lisp: Likewise
668 * chatter.lisp: Likewise
669 * checkout.lisp: Likewise
670 * clisp-linux.lisp: Likewise
671 * commit.lisp: Likewise
672 * diff.lisp: Likewise
673 * dirwalk.lisp: Likewise
674 * filt.lisp: Likewise
675 * import.lisp: Likewise
676 * INSTALL: Likewise
677 * mapping.lisp: Likewise
678 * mcvs-main.lisp: Likewise
679 * Meta-CVS-PAPER: Likewise
680 * move.lisp: Likewise
681 * options.lisp: Likewise
682 * posix.lisp: Likewise
683 * RELEASE-NOTES: Likewise
684 * remove.lisp: Likewise
685 * restart.lisp: Likewise
686 * seqfuncs.lisp: Likewise
687 * split.lisp: Likewise
688 * sync.lisp: Likewise
689 * system.lisp: Likewise
690 * update.lisp: Likewise
691
692 2002-01-28 Kaz Kylheku <kaz@ashi.footprints.net>
693
694 * move.lisp (move-guts): test the actual filesystem as well
695 as the map for existence of a directory or file. This makes
696 the move operation behave better. Files can be moved to an
697 existing directory that is not known to MCVS, and a file
698 can properly clobber a target file that is not known to MCVS.
699
700 * clisp-linux.lisp (directory-p, regular-p, symlink-p): define
701 methods for these generic functions for a NIL argument, such
702 that they return NIL.
703
704 2002-01-28 Kaz Kylheku <kaz@ashi.footprints.net>
705
706 * move.lisp (simple-move-to-dir): eliminated a bunch of code
707 with the result that mcvs mv now works more like the Unix mv
708 when moving a directory to another directory.
709
710 * mcvs-main.lisp (mcvs-execute): fix bogus error message
711 when options are given but no command.
712
713 * README: don't use -z3 in example because this style of
714 specifying an argument to an option doesn't work.
715
716 2002-01-27 Kaz Kylheku <kaz@ashi.footprints.net>
717
718 * add.lisp (mcvs-add): Remove bogus test for NIL or T; allow
719 recursivep to be a generalized boolean variable. This allows
720 mcvs add -R to work properly.
721
722 * mcvs-main.lisp (*cvs-command-options-arg*): add support
723 for -u parameter, useful in cvs diff.
724 (*mcvs-command-table*): Add "fi" shorthand for "filt".

  ViewVC Help
Powered by ViewVC 1.1.5