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

Contents of /meta-cvs/F-0C9187C87304A15BD59A42657A3BE5A3

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.5