ViewVC logotype

Diff of /meta-cvs/F-B3689DBB46386B16F4B2331934B69223

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.127 by kaz, Mon Oct 7 03:53:17 2002 UTC revision by kaz, Thu Apr 24 04:32:25 2003 UTC
# Line 1  Line 1 
1                         Release Notes for Meta-CVS                         Release Notes for Meta-CVS
3    Release 1.0.7, 2003-0?-??:
5      New commands sync-to-cvs and sync-from-cvs expose the hard link
6      synchronization algorithm.
8      Revamped error recovery logic. To continue in an error situation now
9      consistently means ``take the bold action that may erase data''
10      or ``proceed in the most obvious way to finish the specified job''.
11      It never means ``roll back the operation and bail'', which was
12      confusing.
14      Termination is no longer unsafe; the `T' menu command, and the
15      equivalent --error-terminate global option perform all necessary
16      restoration and cleanup.
18      Errors that have more information to print, like a list of files or
19      whatever, now indicate it in a standard way which translates to the
20      `I' menu command.
22      Chatter output goes to standard error rather than standard output,
23      as do all error messages.
25      The interactive error menu now talks to the user using the controlling
26      tty, meaning that it will work even if the input or output of the
27      mcvs command are redirected. If no controlling tty is available,
28      then interactive error handling is disabled; the default behavior
29      is then like --error-terminate but can of course be overridden by
30      --error-continue.
32    Release 1.0.6, 2003-04-14:
34      The create command detects the existence of text editor backup files (or
35      other junk) in the MCVS directory after the editor is invoked on the
36      TYPES file. The user is prompted regarding their removal. If these files are
37      not removed, cvs import will bring them into the repository.
39      When Meta-CVS has to split a large CVS command into two or more
40      invocations with shorter argument lists, it now does not stop when one of
41      these invocations is unsuccessful; it does all of them, and combines
42      their termination indications by a logical AND. There was a bug in this
43      logic also which caused, upon termination failure, a cvs command to be
44      repeated for the same list of files.
46      Synchronization logic has been revamped. Unnecessary synchronizations
47      have been removed, which will make some commands run faster.
48      Synchronizations now have specific directions; for instance before
49      a CVS commit or update, changes are pushed from the directory tree to the MCVS
50      directory only, and after the CVS operation, in the reverse direction only.
52      Meta-CVS will no longer re-create missing F- files by linking from the
53      directory tree. Doing this causes two problems. One is that if a user
54      manually removes a F- file and do ``mcvs up'', she wants CVS to fetch a clean
55      copy and push it into the tree. She does not want the file to be restored
56      from the tree prior to the CVS update. Secondly, sometimes CVS itself
57      removes files. If we re-create the files, CVS will consider them to
58      be ``in the way''.
60      Failures to read from the MAP or MAP-LOCAL files are treated as interactive,
61      continuable errors. By continuing, the user agrees that the behavior will
62      be as if an empty map were read.
64      The grab command uses less memory for performing move analysis.
66    Release 1.0.5, 2003-02-25:
68      Bugfix: some one-argument command line options of CVS must be
69      specifies as a single parameter, with no separation between the
70      option letter and the argument characters. For example:
72        cvs log -r rev-1::rev-2      # invalid
73        cvs log -rrev1::rev2         # correct
75      Meta-CVS accepts either syntax, but it was generating the first form
76      when calling CVS. Now, *all* one-letter options that have an argument
77      are formatted in the second manner.
79      Bugfix: one more waitpid() issue was fixed; on fast machines, under
80      Linux, it was observed that from time to time Meta-CVS would get
81      a -1/ECHILD when waiting for the CVS process.
83    Release 1.0.4, 2003-02-20:
85      Fix remaining occurences of the CVS ``No child processes'' abort
86      problem, affecting the list-branches command, merge command
87      and the -r option of the filt command.
89    Release 1.0.3, 2003-02-12:
91      ! THIS RELEASE IS WITHDRAWN. It was accidentally created from the
92      ! experimental main trunk of the Meta-CVS codebase, rather than
93      ! the 1.0 branch. But 1.0.4 does contain all of the changes
94      ! described here.
96      Fix for the CVS ``No child processes'' abort problem. It turns out
97      that CLISP sets the signal handling action for the SIGCHLD signal
98      to SIG_IGN, which is inherited by child processes across the
99      fork() and execvp() calls used in our mcvs_spawn() function.
100      We correct the problem by resetting the signal handler to SIG_DFL
101      just before executing the new process image.
103      New feature, --up option. The argument is a nonnegative integer value
104      (default is zero) which specifies how many sandbox nesting levels to
105      escape out of when locating the sandbox root. This helps work with
106      nested Meta-CVS sandboxes.
108    Release 1.0.2, 2003-02-10:
110      Bugfix in waitpid logic in the C library for running external processes;
111      we were not dealing with an interrupted waitpid.
113      Behavior of mcvs tag is changed: when there are no filename arguments,
114      the whole tree is tagged including the metafiles. In other words, it
115      now works like the commit command.
117    Release 1.0.1, 2003-01-30:
119      Hard link sync optimization: update of a subset of files, commit, and
120      other operations like log and diff don't need to synchronize all
121      hard links, just the ones operated on.
123      The merge and remerge commands support -k option for overriding
124      CVS keyword expansion mode.
126      Fixes to getcwd error handling.
128      Improvement in install.sh script's logic for locating CLISP installation
129      directory.
131    Release 1.0, 2003-01-01:
133      NOTE: It's not possible to upgrade to this release via mcvs-upgrade,
134      because it adds some new C functions to the Lisp executable.
136      Security fix: read-time evaluation was not suppressed when reading
137      structured data, like MCVS/MAP and MCVS/TYPES. This means that it
138      was possible for Alice to check in something that would execute
139      arbitrary code on Bob's computer.
141      Optimization: use fork and exec to launch CVS rather than CLISP's
142      run-program function, which indirects through the shell interpreter.
143      (On Cygwin, the spawnvp function is used).
145      Performance fix: stat() was being called superfluously by the
146      hard synchronization code, twice for each file.
148      Build fix: install.sh works when CLISP executable is called ``lisp.exe'',
149      which is the case under Cygwin with newer CLISP releases.
151    Release 0.99, 2002-11-17:
153      New link command for creating symbolic links.
155      Global option -n (dry run---don't modify filesystem) is processed
156      internally now, not just passed to CVS.
158      Failure to invoke text editor is handled.
160      The -r option of filt is fixed; it has been broken since the change to the
161      new MAP format, because it was reading the raw map representation, not
162      passing it through the right conversion steps that are needed now.
164      Bugfix to purge and remap commands: they were fooled by CVS-generated
165      files in the MCVS/CVS directory. Specifically, files having F- names, and a
166      the suffix ,t.
168      Bugfix to add logic in directory restructuring: there was the possibility
169      of mistakingly taking a clobbered local file to be a new local version of
170      the added file, instead of replacing it. This could happen if the local
171      file had a future timestamp relative to the one coming from the repository.
173      The prop command does not synchronize or write out map if no options are
174      specified.
176      Help text added for move and branch commands. Help text for grab rewritten.
178      The CVSEDITOR and VISUAL environment variables are now checked, not
179      only EDITOR.
181    Release 0.98, 2002-10-13:
183      The prop command was mistakenly reading from MAP-LOCAL and writing to MAP,
184      which could cause information loss if the two differ. It now reads from MAP
185      and writes to MAP. (The property changes propagate to MAP-LOCAL by the
186      update operation invoked by prop, as before).
188      Invocation of external programs included in debug trace.
190      The filt command does not filter F- names if they are immediately preceded by
191      the MCVS/ prefix; such occurences are clearly concrete, sandbox-relative
192      references to the actual F- links, rather than abstract references.
194      The update command now supports the -C option, to fetch the repository
195      copy, throwing away local changes. It also now honors the --metaonly
196      and --nometa options.
198      The export command has been added, for checking out documents without creating
199      a working copy (no MCVS directory in the root of the checkout).
201      The watch command has been added. Note that its syntax differs from that
202      of CVS.
204      The watchers, editors, edit, and unedit commands have been added.
206      A script called mcvs-upgrade is now included, and installs alongside the mcvs
207      script.  This allows the Meta-CVS Lisp image to recompile and patch itself,
208      giving users of binary distributions an easy way to upgrade from source
209      code.
211  Release 0.97, 2002-10-06:  Release 0.97, 2002-10-06:
213    Meta-CVS now builds and runs on Microsoft Windows, under Cygwin    Meta-CVS now builds and runs on Microsoft Windows, under Cygwin

Removed from v.1.127  
changed lines
  Added in v.

  ViewVC Help
Powered by ViewVC 1.1.5