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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.22 - (show annotations)
Sat Feb 9 03:23:33 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.21: +5 -0 lines
* checkout.lisp (mcvs-checkout): Ensure local mapping is
sorted when written out, for easier comparisons.
1 2002-02-08 Kaz Kylheku <kaz@ashi.footprints.net>
2
3 * checkout.lisp (mcvs-checkout): Ensure local mapping is
4 sorted when written out, for easier comparisons.
5
6 2002-02-07 Kaz Kylheku <kaz@ashi.footprints.net>
7
8 * sync.lisp (synchronize-files): Return :dir symbol when either
9 argument is a directory.
10 * mapping.lisp (mapping-synchronize): Chatter output messages
11 are shorter. Handles :dir return value from synchronize-files.
12 (mapping-update): New sanity checks for moved and added
13 files, to avoid clobbering local files. Removed redundant
14 call to ensure-directories-exit in move logic, because
15 synchronize-files will do it anyway. Chatter messages reordered
16 to occur before their corresponding action is done.
17
18 2002-02-07 Kaz Kylheku <kaz@ashi.footprints.net>
19
20 Improve error handling, and builtin ``debug shell''.
21
22 * mcvs-main.lisp (*mcvs-error-treatment*): Special variable
23 can have new domain value, namely :decline.
24 (mcvs-top-error-handler): Print error message when terminating
25 non-restartable error. Handle new :decline treatment by
26 simply returning.
27 (mcvs-debug-shell): Set *mcvs-error-treatment* to :decline
28 so that errors are caught by debugger.
29
30 2002-02-04 Kaz Kylheku <kaz@ashi.footprints.net>
31
32 * mapping.lisp (mapping-sort): Removed function.
33 (mapping-write): Sort written map by F- file names,
34 not by path names. This is far better for merging, because
35 files stay in the same place when they are renamed.
36
37 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
38
39 Added status, log and annotate.
40
41 * mcvs-main.lisp: (*log-options*, *status-options*,
42 *annotate-options*): New constants.
43 (*mcvs-command-table*): Add new entries.
44
45 * generic-lisp (mcvs-log-wrapper, mcvs-status-wrapper,
46 mcvs-annotate-wrapper): New functions.
47
48 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
49
50 Added tag command.
51
52 * diff.lisp: File renamed to generic.lisp.
53 (mcvs-diff): Function renamed to mcvs-generic.
54
55 * generic.lisp (mcvs-generic): Function no longer dedicated to
56 diffing only; takes CVS command to execute as an argument,
57 also takes arguments and files as separate lists.
58 (mcvs-diff-wrapper): Modified to invoke mcvs-generic properly.
59 (mcvs-tag-wrapper): New function, uses mcvs-generic to implement
60 tag command.
61
62 * mcvs-main.lisp (*tag-options*): New constant.
63 (*mcvs-command-table*): New entry for tag command.
64
65 2002-02-03 Kaz Kylheku <kaz@ashi.footprints.net>
66
67 Added workaround for operating system argument passing limitations,
68 resembling the Unix xargs utility. Also, trimmed some fat
69 from the basename function.
70
71 * clisp-linux.lisp: (*argument-limit*): New constant added.
72 (arglist-to-command-string): Function removed.
73 (execute-program): Function removed.
74 (shell-interpreter): New function, wrapper for CLISP's shell
75 function, turns exit status into T (success) or NIL (failure).
76
77 * diff.lisp (mcvs-diff): Uses execute-program-xargs instead
78 of execute-program.
79
80 * posix.lisp (basename): Does not canonicalize path name. This
81 turns out to be an unnecessary performance hit in some cases.
82 (arglist-to-command-string): New function. Similar to what was
83 removed from clisp-linux, but this one properly escapes all
84 shell metacharacters.
85 (execute-program): New function, calls shell-interpreter.
86 (execute-program-xargs): New function. Takes two argument lists.
87 Forms one or more command lines by combining the first argument list
88 with one or more pieces of the second argument list, and
89 executes each command. The length of the pieces is determined
90 by the argument passing limit.
91
92 * dirwalk.lisp (ensure-directories-gone): Add use of
93 canonicalize-path because basename doesn't do it.
94
95 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
96
97 Algorithmic efficiency improvements. No longer using
98 abstract set operations to update file structure or find
99 duplicates in the maps. Could still streamline the sorting.
100
101 * mapping.lisp (mapping-sort): Express more succinctly using key.
102 (mapping-dupe-check): Rewrite using loop over sorted lists.
103 (mapping-difference): New function for computing mapping change.
104 (mapping-update): Modify to use mapping-difference.
105
106 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
107
108 * mapping.lisp (mapping-update): When moving files, ensure
109 that the target is unlinked if it exists.
110
111 * move.lisp (simple-rename): No longer do target unlinking
112 here. Also bugfix: it wasn't handling renames of directories
113 containing just one file.
114
115 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
116
117 * mapping.lisp (mapping-dupe-check): New function for
118 detecting duplicate objects or paths in a mapping.
119 (mapping-sane-p): Function removed.
120 (mapping-read): Use mapping-dupe-check to verify a map
121 when asked by the sanity-check keyword.
122 (mapping-update): Specify sanity check when reading MCVS/MAP.
123
124 * checkout.lisp (mcvs-checkout): Checkout also performs
125 sanity check.
126
127 2002-02-02 Kaz Kylheku <kaz@ashi.footprints.net>
128
129 * mcvs-main.lisp (mcvs): Use CLISP's exit function correctly
130 to establish proper termination status.
131
132 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
133
134 * mcvs-main.lisp (mcvs-execute): Parse command-specific options
135 properly based on knowledge of each command's set of options.
136 (parse-args): Function removed.
137
138 * options.lisp (parse-opt): Correctly process long options with
139 arguments. Argument is part of the string, separated by = symbol.
140
141 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
142
143 * options.lisp (parse-opt): When multiple options characters are
144 bunched up into one argument, and one of them other than the
145 last one takes an argument, then the remaining ones are
146 considered to constitute a string which is an argument to that
147 option. For instance -y32 means -y 32, not -y -3 -2, assuming
148 that y is an option that requires an argument.
149
150 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
151
152 Top level handler terminates by non-local exit back to
153 mcvs function, rather than by calling (exit).
154
155 * mcvs-main.lisp (mcvs-top-error-handler): Restructured
156 to call (throw 'mcvs-exit t).
157 (mcvs-execute): Ensure that NIL is returned by normal exit.
158 (mcvs): Catches 'mcvs-exit throw, and calls (exit 0) or (exit 1)
159 accordingly.
160
161
162 2002-01-31 Kaz Kylheku <kaz@ashi.footprints.net>
163
164 Renamed all ``filemap-'' functions to ``mapping-'' prefix.
165
166 * mapping.lisp (filemap-generate-name, filemap-sort,
167 filemap-extract-paths, filemap-lookup, filemap-prefix-lookup,
168 filemap-prefix-matches, filemap-object-lookup,
169 filemap-same-object-p, filemap-same-path-p, filemap-moved-p,
170 filemap-rename-files, filemap-sane-p): Old names removed.
171 (mapping-generate-name, mapping-sort,
172 mapping-extract-paths, mapping-lookup, mapping-prefix-lookup,
173 mapping-prefix-matches, mapping-object-lookup,
174 mapping-same-object-p, mapping-same-path-p, mapping-moved-p,
175 mapping-rename-files, mapping-sane-p): New names created.
176 (mapping-read, mapping-write, mapping-synchronize,
177 mapping-update): Edit calls to renamed functions.
178 * add.lisp (mcvs-add): Likewise.
179 * diff.lisp (mcvs-diff): Likewise.
180 * filt.lisp (mcvs-filt): Likewise.
181 * import.lisp (mcvs-import): Likewise.
182 * move.lisp (simple-rename, simple-move-to-dir, move-guts): Likewise.
183 * remove.lisp (mcvs-remove): Likewise.
184
185 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
186
187 Factored out repeated code for reading and writing of the MAP and
188 MAP-LOCAL files.
189
190 * mapping.lisp (mapping-read, mapping-write): New functions.
191 (mapping-synchronize, mapping-update): Use new functions.
192 * move.lisp (mcvs-move): Likewise.
193 * filt.lisp (mcvs-filt): Likewise.
194 * add.lisp (mcvs-add): Likewise.
195 * remove.lisp (mcvs-remove): Likewise.
196 * checkout.lisp (mcvs-checkout): Likewise.
197 * diff.lisp (mcvs-diff): Likewise.
198 * import.lisp (mcvs-import): Likewise.
199
200 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
201
202 * filt.lisp (mcvs-filt): use *mcvs-dir* variable instead of
203 hard coding "MCVS" string.
204
205 2002-01-30 Kaz Kylheku <kaz@ashi.footprints.net>
206
207 * MCVS-PAPER: Renamed to Meta-CVS-PAPER
208
209 * README: Change all references to MCVS to Meta-CVS, the
210 new official name of the program.
211 * add.lisp: Likewise
212 * chatter.lisp: Likewise
213 * checkout.lisp: Likewise
214 * clisp-linux.lisp: Likewise
215 * commit.lisp: Likewise
216 * diff.lisp: Likewise
217 * dirwalk.lisp: Likewise
218 * filt.lisp: Likewise
219 * import.lisp: Likewise
220 * INSTALL: Likewise
221 * mapping.lisp: Likewise
222 * mcvs-main.lisp: Likewise
223 * Meta-CVS-PAPER: Likewise
224 * move.lisp: Likewise
225 * options.lisp: Likewise
226 * posix.lisp: Likewise
227 * RELEASE-NOTES: Likewise
228 * remove.lisp: Likewise
229 * restart.lisp: Likewise
230 * seqfuncs.lisp: Likewise
231 * split.lisp: Likewise
232 * sync.lisp: Likewise
233 * system.lisp: Likewise
234 * update.lisp: Likewise
235
236 2002-01-28 Kaz Kylheku <kaz@ashi.footprints.net>
237
238 * move.lisp (move-guts): test the actual filesystem as well
239 as the map for existence of a directory or file. This makes
240 the move operation behave better. Files can be moved to an
241 existing directory that is not known to MCVS, and a file
242 can properly clobber a target file that is not known to MCVS.
243
244 * clisp-linux.lisp (directory-p, regular-p, symlink-p): define
245 methods for these generic functions for a NIL argument, such
246 that they return NIL.
247
248 2002-01-28 Kaz Kylheku <kaz@ashi.footprints.net>
249
250 * move.lisp (simple-move-to-dir): eliminated a bunch of code
251 with the result that mcvs mv now works more like the Unix mv
252 when moving a directory to another directory.
253
254 * mcvs-main.lisp (mcvs-execute): fix bogus error message
255 when options are given but no command.
256
257 * README: don't use -z3 in example because this style of
258 specifying an argument to an option doesn't work.
259
260 2002-01-27 Kaz Kylheku <kaz@ashi.footprints.net>
261
262 * add.lisp (mcvs-add): Remove bogus test for NIL or T; allow
263 recursivep to be a generalized boolean variable. This allows
264 mcvs add -R to work properly.
265
266 * mcvs-main.lisp (*cvs-command-options-arg*): add support
267 for -u parameter, useful in cvs diff.
268 (*mcvs-command-table*): Add "fi" shorthand for "filt".

  ViewVC Help
Powered by ViewVC 1.1.5