/[meta-cvs]/meta-cvs/F-B3689DBB46386B16F4B2331934B69223
ViewVC logotype

Contents of /meta-cvs/F-B3689DBB46386B16F4B2331934B69223

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.72 - (show annotations)
Mon Jul 1 16:17:22 2002 UTC (11 years, 9 months ago) by kaz
Branch: MAIN
Changes since 1.71: +3 -0 lines
*** empty log message ***
1 Release Notes for Meta-CVS
2
3 Release 0.17, 2002-07-??:
4
5 The create command no longer takes a vendor branch. Instead the symbol
6 ``Created-by-Meta-CVS'' is used as the vendor tag to satisfy CVS.
7
8 The grab command no longer does useless synchronization on files that
9 are about to be deleted.
10
11 Release 0.16, 2002-06-29:
12
13 Added new heuristics to grab command. Paths are analyzed to determine
14 move distance. Greater distances reduce the confidence in a move.
15 These rules help sort out grabs in a project where similar or
16 duplicate files are subject to parallel moves, the ambiguity being
17 resolved by favoring shorter moves. Word comparisons are case-insensitive
18 now. Common words (those that appear in many files) are ignored when
19 comparing files.
20
21 New options, --meta and --metaonly. This area of Meta-CVS is cleaned
22 up a little bit. Most reporting commands like log or diff no longer
23 operate on meta files by default; they must be explicitly told to do
24 so with --meta or --metaonly. Only the commit command implicitly includes
25 metafiles by default, and so if this is not wanted, --nometa must be
26 selected. The update command remains special; if it is given file
27 arguments, it does not include meta files. If given no arguments, it
28 does a global CVS up across the entire project.
29
30 Release 0.15, 2002-06-25:
31
32 Optimized a string splitting routine which is used heavily for processing
33 paths; the result is a noticeable performance improvement in some commands
34 that process large numbers of files.
35
36 Renamed ``import'' command to ``create''.
37
38 Bugfix: checkout and create showed errors when removing directory, due to
39 broken :postorder support in directory walking function.
40
41 Bugfix: on failure, checkout was failing to delete the MCVS directory when
42 the checkout was directed to an existing directory.
43
44 New feature: ``mcvs grab'' command imports third-party snapshots to a
45 branch. This is invoked in the root directory of the source tree to import.
46 It determines what files have been added and removed in the snapshot, and
47 tries to compute which removes and adds are actually moves. This is done by
48 analyzing the actual contents of the files according to a crude algorithm to
49 do fuzzy comparisons, so that even files which were modified as well as moved
50 are discovered.
51
52 Release 0.14, 2002-06-21:
53
54 Bugfix: mcvs add was broken for files that have no suffix, causing
55 the underlying cvs add to fail. This was broken in 0.7 when type
56 handling was added.
57
58 Release 0.13, 2002-06-06:
59
60 Sandbox synchronization now handles the case of two files having
61 the same timestamp. An error is signaled, with interactive resolution
62 to synchronize either way, or do nothing.
63
64 If a file must be deleted on update, and this cannot be done, it
65 is now a continuable error.
66
67 Bugfix: pass -I ! to cvs import so that it won't ignore some F- files
68 whose suffix is one of the ones cvs ignores by default.
69
70 New command: mcvs remap. The user can move or delete files directly without
71 going through Meta-CVS. When mcvs remap is invoked, it will hunt down the
72 moves and deletions, and reconstruct the mapping accordingly; that is,
73 it remaps the new structure. This command uses inode numbers to identify
74 files; if a file is copied and then the original is deleted, that won't
75 be recognized as a move.
76
77 Release 0.12, 2002-04-18:
78
79 Bugfix: remove was broken in 0.10, fixed now.
80
81 Bugfix: status, diff, etc. work in empty project rather than complaining
82 ``. not known to Meta-CVS''.
83
84 The checkout operation now can now populate an existing directory, including
85 the current working directory (mcvs co -d . modulename). Of course, the
86 target directory cannot be an existing Meta-CVS sandbox.
87 This is a useful feature, which allows sandboxes to blend with an
88 existing directory structure.
89
90 Checkout now uses the same function for generating the sandbox
91 structure as does update. This is now necessary, because local files
92 can be clobbered by the checkout.
93
94 Release 0.11, 2002-04-12:
95
96 Bugfix: when branch invokes rtag, it now takes the CVSROOT information
97 from CVS/Root and passes it via -d. This is necessary because rtag does not
98 look at a local CVS subdirectory for this information, only the
99 -d option or the environment variable.
100
101 Command for listing branches added (list-branches or lb). Also shows
102 what sticky tag the sandbox is updated to.
103
104 Command for switching branches added (switch or sw).
105
106 Merge detects that working copy is on non-branch tag and bails.
107
108 Absolute paths can now be specified as file arguments. These are
109 based from the root directory of the sandbox, not the actual filesystem root
110 directory.
111
112 Release 0.10, 2002-04-03:
113
114 Automatic merging implemented. Branch is created using branch command,
115 and merging from another branch is done using simple merge command.
116 Meta-CVS maintains the tags to keep track of what has been merged
117 from what branch to what branch.
118
119 Bugfix: checkout -d foo bar was complaining about directory bar already
120 existing, even though it should only care about foo.
121
122 The remove command now requires explicit -R option to recursively remove
123 a directory. It has more detailed error reporting.
124
125 The move command has better error reporting.
126
127 Release 0.9, 2002-03-14:
128
129 Bugfix: the .cvsignore file is now subject to tagging, status, etc,
130 (unless --nometa is specified, of course).
131
132 The mcvs filt command takes -r <revision> or -D <date> parameters.
133 This means to retrieve the MAP file as of the specified revision or
134 date and use that mapping to perform the filtering translation,
135 rather than using MAP-LOCAL.
136
137 The mcvs update command takes filename arguments now and also
138 supports the -p option.
139
140 Release 0.8, 2002-03-13:
141
142 Bug fixed in mcvs add; it was not ignoring files that are already
143 listed as :ignore in MCVS/TYPES.
144
145 Bug fixed in mcvs move: a target with a trailing slash is now treated
146 as a directory (if it does not already exist and is a non-directory).
147
148 The -d option of mcvs checkout can now be used to override the checkout
149 directory, which is normally the same as the module name.
150
151 The global options --version, --help, -q, -Q and -e are now supported.
152
153 New global options --error-continue and --error-terminate to disable
154 interactive error handling in two different ways.
155
156 Log level of many messages has changed; many messages have been
157 relegated to debug level.
158
159 The import command now creates a .cvsignore file containing the name
160 MAP-LOCAL.
161
162 Release 0.7, 2002-03-09:
163
164 The import command collects a list of the file suffixes and brings up
165 a text editor to allow the user to edit their CVS keyword expansion
166 behavior. This information is kept in a new metafile called TYPES. The
167 add command also updates TYPES; it identifies any suffixes which are new,
168 and brings up an editor. The F- files now carry suffixes, which
169 simplifies interfacing with CVS, and also allows cvswrappers to work.
170
171 Recursive add works (mcvs add -R ...).
172
173 New command line option --nometa allows metafiles to be excluded from
174 diff, tag, and other commands; without the option they are inserted
175 into the list of files to be processed.
176
177 The commit option now takes an optional list of files or directories,
178 just like tag, diff, and others.
179
180 Release 0.6, 2002-02-16:
181
182 The add operation was horribly broken in 0.5, it is fixed.
183
184 User can interactively select whether to clobber local files or leave
185 everything alone. Effects on the mapping file of a mcvs move are undone,
186 if the restructuring is rolled back, or raises a condition that leads
187 to termination.
188
189 Meta-CVS now keeps a new meta-file called MCVS/TYPES. This is created
190 during import, and specifies the CVS keyword expansion mode for files
191 having given suffixes, and can also tell Meta-CVS to ignore certain files
192 when importing or adding.
193
194 Release 0.5, 2002-02-10:
195
196 Much improved error handling. Filesystem rearranging code performs
197 sanity checks to prevent adds and moves from accidentally clobbering
198 local files. A rearranging gone bad can be rolled back. Effects
199 of a failed mcvs add can also be rolled back.
200
201 MAP-LOCAL is now sorted in the same way as MAP.
202
203 Release 0.4, 2002-02-04:
204
205 CVS is invoked using internal function resembling the xargs utility,
206 which ensures that multiple command lines are generated if necessary to
207 avoid surpassing the operating system limit on argument and environment
208 vector size. This is important when someone wants to diff or stat a
209 subdirectory, which requires Meta-CVS to pick out the individual files
210 at the CVS level.
211
212 The tag, log, status and annotate commands are now available.
213
214 The MAP file is sorted on F- file names now, not path names. This
215 improves merging, since files do not move within the file when
216 they are renamed.
217
218 Release 0.3, 2002-02-02:
219
220 Process termination done is properly in top level handler, by a nonlocal
221 exit. The program properly indicates failed termination when it exits
222 due to an error condition.
223
224 Corrections are made in the command line option processing. If z is an
225 option that takes an argument, and the argument is -zx, then x is
226 treated as the argument to the option. Long options arguments are
227 recognized properly, according to the --opt=arg convention. The option
228 processing is restructured. Most of the commands now take the
229 appropriate cvs command-specific options.
230
231 The update algorithm performs dupe checking over the map, which could
232 happen during a merge.
233
234 Some more bugfixing has been done to the move command. It was still not
235 handling right some cases of an unversioned file being clobbered. Also,
236 it wasn't renaming a directory containing just one file.
237
238 I did some performance investigation for larger file sets, and
239 ended up rewriting the code that computes filesystem restructuring
240 changes and map duplicates.
241
242 Release 0.2, 2002-01-30:
243
244 Changed official name from MCVS to Meta-CVS. The move command now
245 performs some filesystem tests so it does the right thing when a versioned
246 file is moved over a non-versioned file, or when a file is moved into
247 a directory not known to Meta-CVS. Factored out reading and writing of
248 map files into functions.
249
250 Release 0.1, 2002-01-28:
251
252 Support for mcvs diff -u added. The -R option works for mcvs add command.
253 Bug fixed in mcvs mv command; it wasn't working analogously to the Unix
254 mv command when copying a directory to an existing directory.
255
256 Release 0.0, 2002-01-27:
257
258 This is alpha software. It is not complete, and lacks documentation.
259 However, it is already usable in its present state and is being used for
260 version control by its author. If you can program in Common Lisp and would
261 like to help, take a look through the TODO file. Send me patches, ideas,
262 feature requests.

  ViewVC Help
Powered by ViewVC 1.1.5