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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.18 - (show annotations)
Mon Feb 4 06:10:53 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.17: +17 -0 lines
Added tag command.

* diff.lisp: File renamed to generic.lisp.
(mcvs-diff): Function renamed to mcvs-generic.

* generic.lisp (mcvs-generic): Function no longer dedicated to
diffing only; takes CVS command to execute as an argument,
also takes arguments and files as separate lists.
(mcvs-diff-wrapper): Modified to invoke mcvs-generic properly.
(mcvs-tag-wrapper): New function, uses mcvs-generic to implement
tag command.

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

  ViewVC Help
Powered by ViewVC 1.1.5