Source

pcl-cvs / NEWS

This is the NEWS file for pcl-cvs, an Elisp front-end to CVS.

User-visible changes in pcl-cvs from 1.05 to present:

* Pcl-cvs now requires GNU emacs version 19.xx or newer.

* Pcl-cvs has been tested with CVS version 1.9.

* Pcl-cvs no longer *needs* to know about all the possible messages from
  CVS, though some functionality may be limited if it fails to parse
  some messages.  The old bug-report generator is gone.

* There's a new display mode invoked by cvs-status (or
  cvs-status-other-window).  Like cvs-examine it doesn't cause the
  current working directory to be modified.  Unlike cvs-examine it
  always shows all the files in the current directory.  Unfortunately it
  always runs "cvs status -l ." when working with versions of CVS prior
  to 1.10 due to the limited information in the output of "cvs status".

* There are new commands cvs-mode-diff-head and cvs-mode-diff-vendor
  that do essentially what you'd expect them to do.

* The default interface to cvs-mode-diff-* functions has been mapped to
  a prefix key 'd'.  The default cvs-mode-diff-cvs command is also now
  mapped to the '=' key.

* A user-settable variable controls whether the various cvs-mode-diff-*
  commands will generate a unique buffer, or use the *cvs-tmp* buffer.

* There are new commands cvs-mode-tag and cvs-mode-rtag.

* There are new commands cvs-checkout and cvs-checkout-other-window.

* Support for managing ChangeLog files, including extraction of default
  commit message contents, has been added.

* Updates to the hooks for the ediff and emerge modes have been
  incorporated (but have not yet been tested to any degree).

* It is now possible to set (or change) some of the default flags passed
  to various CVS commands.  See cvs-update-optional-flags,
  cvs-status-flags, cvs-log-flags, cvs-diff-flags, cvs-tag-flags,
  cvs-rtag-flags and their corresponding cvs-set-*-flags functions.


User-visible changes in pcl-cvs from 1.04 to 1.05:

* Elib is no longer distributed with pcl-cvs.  You must get Elib
  separately, for instance from ftp.lysator.liu.se in pub/emacs.

* The Lucid Emacs support works again.

* A new function, cvs-change-cvsroot, can be used to interactively
  switch between CVS repositories.

* The mode line in the *cvs* buffer now indicates when a "cvs update"
  is running.

* The .cvsignore file is automatically sorted alphabetically (to
  reduce the risk of conflicts when two people add different files
  simultaneously). This behaviour can be turned off with
  cvs-sort-ignore-file.

* A trailing newline is always added in commit log messages.  This
  behaviour can be turned off with
  cvs-commit-buffer-require-final-newline.

* This version of pcl-cvs should work together with RCVS.  I have not
  tested this myself, though.

* Plus some bug fixes.  (Note that the version of cookie.el that is
  distributed with pcl-cvs 1.04 contains errors that affects pcl-cvs.
  You should get Elib 0.07).


User-visible changes in pcl-cvs from 1.03 to 1.04:

* Support for Emerge.  Hitting "e" on a file that is Modified, Merged
  or in Conflict will start Emerge, an interactive file merger written
  in Emacs Lisp.  This requires Emerge version 4.  Emerge is not
  included in this package.  If you can't find it anywhere else, you
  can get in from ftp.lysator.liu.se in pub/emacs.  This package makes
  it a lot easier to resolve conflicts.

* Emacs will now automatically revert your buffers when the CVS
  commands pcl-cvs issues causes the file to change.  This automatic
  revert never occurs if the buffer contents did not agree with the
  file prior to the command.

* If you are running Lucid GNU Emacs, you will get some fonts and
  mouse support.  This was contributed from people at Lucid.

* The variable cvs-cvsroot can be used to select the location if the
  repository.  You no longer need to exit Emacs, setenv CVSROOT, and
  start a new Emacs if you work with multiple repositories.

* The "q" key can be used to hide the *cvs* buffer.

* The name of the commands in the *cvs* have changed. If it was called
  cvs-foo, it will now be called cvs-mode-foo.  See the ChangeLog
  entry from Tue Aug  4 03:02:25 1992 for a complete list of changes.

* The variable cvs-cvs-diff-flags is no longer used.  Instead,
  cvs-diff-flags is always used.

* Plus a lot of bug fixes.


User-visible changes in pcl-cvs from 1.02 to 1.03:

* Output from CVS to stdout and stderr is separated and parsed
  independently.  In that way pcl-cvs should work regardless of
  whether stdout is buffered or line-buffered.  Pcl-cvs should now
  work with CVS 1.3 without modifications on hosts such as
  DECstations.

* Pcl-cvs now fully supports RCS version 5.6 as well as 5.5.

* New functions:

    + cvs-undo-local-changes ("U") - Undo all your modifications
				     to a file and get the newest
				     version from the repository.
    + cvs-update-other-window	   - Similar to cvs-update.
    + cvs-byte-compile-files       - Byte compile the selected files.

* cvs-update now displays the *cvs* buffer, which initially contains a
  small message ("Running `cvs update' in /foo/bar/gazonk/...") until
  the update is ready.  The *cvs* buffer no longer pops up when the
  update is ready.  It often failed to pop up, due to race conditions
  that are very hard to solve (and I doubt that they were at all
  solvable).

* cvs-unmark-all-files is moved from "U" to "ESC DEL" to be
  "compatible" with dired.

* cvs-diff ("d") and cvs-diff-backup ("b") can be configured to work
  on only the file the cursor is positioned on, and ignore any marked
  files.  A prefix argument toggles this.

* Only one `cvs update' can be run at a time.  (It was previously
  possible to start more than one simultaneously, but pcl-cvs could
  not really handle more than one.)

* Some rudimentary support for programs that CVS runs at update (due
  to the -u switch in the modules file).

* Pcl-cvs now automatically generates a bug report if it can't parse
  the output from CVS.

* The *cvs* buffer is read-only.

* Pcl-cvs now creates temporary files in $TMPDIR if that environment
  variable is set (otherwise it uses /tmp).

---End of file NEWS---