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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.5