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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.19 - (show annotations)
Mon Feb 4 06:21:04 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.18: +11 -0 lines
Added status, log and annotate.

* mcvs-main.lisp: (*log-options*, *status-options*,
*annotate-options*): New constants.
(*mcvs-command-table*): Add new entries.

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

  ViewVC Help
Powered by ViewVC 1.1.5