-*-Text-*-

VM 5.72 released (29 May 1994)

* doc fixes
* fixed vm-after-revert-buffer-hook to not attack non-VM buffers.
* changed calls to find-file-name-handler to specify the
  operation; I don't care why.
* run hooks in vm-arrived-message-hook for messages returned by
  the call to vm-assimilate-new-messages.
* call vm-find-leading-message-separator before calling
  vm-skip-past-leading-message-separator in the vm-stuff-
  functions.  This avoids stuffing headers before the leading
  message separator due to vm-skip-past-leading-message-separator
  being confused by newlines at the beginning of folder.

VM 5.71 released (25 May 1994)

* (fboundp 'mail-signature-file) -> (boundp 'mail-signature-file).
  graaaggg.
* vm-mutable-window non-nil non-t special behavior
  eliminated.
* added `exit-minibuffer' to the list of commands VM will do
  window config setup for.  This is so that recover-file and
  revert-buffer, which read from the minibuffer but do not
  protect the value of this-command, have window configuration
  done for them.
* fixed VM support for revert-buffer for v19.23 Emacs;
  revert-buffer now preserves some marker positions across the
  reversion and this hosed VM's check for reversion since it used
  the marker clumping as an indicator of the reversion.  v19.23
  has a new after-revert-hook that VM uses.
* Shapiro and Foiani typo fixes.

VM 5.70 released (18 May 1994)

* added missing quote in (fboundp mail-signature-file) in vm-reply.el.

VM 5.69 released (18 May 1994)

* vm-munge-message-separators needed (goto-char start).
* fixed vm-munge-message-separators to pay attention to
  first arg, folder-type.
* fixing vm-munge-message-separators exposed a bug in
  vm-convert-folder-type; trailing message separators were getting
  munged inappropriately because of a bad search bound due to a
  marker being shifted.
* digest bursting code also needed to be fixed, now that
  vm-munge-message-separators is actually doing the (goto-char start);
  match-data needed to be saved and restored, needed to start
  munging after inserting the leading message separator instead of
  before inserting it.
* moved message order gobbling into vm-assimilate-new-messages;
  needed because thread sorting is done there and message order
  gobbling needed to be done before thread sorting.
* In FSFmacs 19.23, find-file-name-handler takes two args, it
  used to take only one.  The second arg is not optional.  Fixed
  code to deal with the one or two arg versions of this function.
* tink message modflag if we encounter a v4 attributes header in
  vm-read-attributes.  The idea is that if the user saves the
  folder we get rid of those retro headers, so the user gets a
  fast summary thereafter.
* get rid of vm-unhighlight-region, since it adds text properties
  that we definitely don't want to find their way in the summary
  cache headers.
* made signature insertion work more like mail-mode; use
  mail-signature-file for lemacs compatibility, insert the
  mail-signature string itself, instead of using it as a file
  name (oops).
* don't go to point-max if to is null in vm-mail-internal--- keep
  point just after the header/text separator line.
* added the word "encapsulation" to RFC 934 digest start.
* fixed babyl label reading bug; needed to skip past comma after
  attributes.
* use regexp-quote on mail-header-separator before using it as a
  search string; can't count on users not putting plusses and other
  regexp crap in it.
* dropped def of vm-highlight-region.
* dropped the spaces after the commas in the label strings.
  Previous convention seems to be to not display them.
* doc string fixes.

VM 5.68 released (12 April 1994)

* vm-resend-bounced-message now strips Sender.
* for From_-with-Content-Length in vm-find-leading-message-separator
  use (match-end 1) instead of (match-beginning 0).
* fixed code in vm-find-trailing-message-separator so that it
  allows mutiple bogus newlines at the end of a message at the
  end of a From_-with-Content-Length folder.  Turns out this code
  is really needed, and I found out after I broke it.
* vm-byte-count -> vm-su-byte-count in vm-save-message.
* removed unneeded (setq vm-need-summary-pointer-update t) forms in
  vm-motion.el.
* don't flush in vm-flush-cached-data if vm-message-list is nil.
* header highlighting is now done using overlays
  instead of text properties in FSF 19.  This should cure the
  "text property leaking in to the summary cache" problem.
* summary highlighting is now done using overlays in FSF Emacs and
  extents Lucid Emacs 19.
* header highlight under Lucid Emacs is now done using the
  out of the box header highlighting functionality.
* Shapiro typo fixes.

VM 5.67 released (6 April 1994)

* used match-end instead of match-beginning in
  vm-find-leading-message-separator for From_-with-Content-Length
  folders. (ack!)
* revised some docstrings.
* added docstrings for many internal functions.
* made vm-find-and-set-text-of to set start of text section to
  (point-max) if \n\n wasn't found.  This is more likely to be
  right than setting it to (point) when the search fails.
* put kludge in make-autoloads to deal with v19 autoload fifth
  arg breakage.
* vm-auto-archive-messages now natters about what it's doing,
  since it's often long running and slow.
* don't stuff labels unless there are messages in the folder.
* fixed a couple of calls to format that had too few args.

VM 5.66 released (26 March 1994)

* added call to vm-unhighlight-region to turn off highlighing of
  headers gathered from the folder buffer.
* set current buffer to real message's buffer, not virtual
  message's buffer, in vm-save-message-sans-headers.
* use `signal' with folder-read-only instead of calling `error'
  in vm-save-message.
* fixed type mismatch error message in vm-save-message; must use
  (vm-message-type-of m) instead vm-folder-type because current
  buffer is the target folder buffer and not the source buffer
  during buffer->buffer saves.  Went ahead and changed the
  buffer->file code for consistency.
* changed all calls to get-file-buffer to vm-get-file-buffer,
  which makes all file->buffer mapping try truenames as well as
  unchased names.
* allow leading newlines in From_ and From-_with-Content-Length
  type folders.
* allow multiple trailing newlines in From-_with-Content-Length
  type folders.
* moved call to vm-convert-folder-type-headers up a bit in
  vm-convert-folder-type, as content-length header generation
  needs the old folder type's trailing message separator to be
  present.  This makes everything-but-mmdf ->
  From_-with-Content-length crash box conversion work right.
  Apparently no one ever tried this.
* moved call to vm-convert-folder-type-headers up a bit in
  vm-change-folder-type, as content-length header generation
  needs the old folder type's trailing message separator to be
  present.  This makes everything-but-mmdf ->
  From_-with-Content-length folder conversion work right.
  Apparently no one ever tried this.
* fixed marker shift problem in vm-change-folder-type that caused
  inserted trailing message separators to be stripped.
  Conversion from From_-with-Content-Length to other folder types
  triggered this because there's no trailing message separator
  for From_-with-Content-Length folders.
* don't clump messages together if Content-Length is wrong.
  this meant moving the content-length goop from
  vm-find-leading-message-separator to
  vm-find-trailing-message-separator, which is where it should
  have been anyway.
* insert "-- \n" before the signature.  not worth the
  argument or unending bug reports.
* fix code that assumes a non-nil value for buffer-file-name in
  folder buffers.

VM 5.65 released (17 March 1994)

* fixed reverse link bug in vm-expunge-folder that was causing
  renumbering to bug out.
* "folder buffer has been deleted" for those who could not figure
  this out on their own.
* dot unquote fix in 5.64 wasn't quite right; try again.
* turning off threading now sorts by physical order to avoid the
  misleading modeline display.
* vm-{mark,unmark}-message-same-subject now follows the summary
  cursor.
* fixed logic error in vm-unthread-message; messages without
  parents were not being unthreaded.
* dropped unused ref to unread-command-event.
* same subject mark commands now report the number of messages
  they mark or unmark.
* don't mark buffer modified unless sort actually changed the
  message order.
* dropped vm-preview-current-message call in vm-save-folder;
  we'll see what the effects are.

VM 5.64 released (9 March 1994)

* dropped call to widen in vm-do-reply, unneeded now that
  vm-yank-message is called instead of doing the yanking
  internal to vm-do-reply.
* always do the stuff in vm-set-buffer-modified-p regardless of
  the real modified flag's value.
* unquote _all_ leading dots in inbound POP messages.
* don't call vm-preview-current-message in an possibly empty
  folder in vm-assimilate-new-messages.
* don't override pre-sort by calling vm-gobble-message-order in vm.

VM 5.63 released (7 March 1994)

* Shapiro typo fixes
* dropped duplicate buffer suppression in vm-build-virtual-message-list;
  not currently needed and doesn't work anyway.
* avoid globally setting tab-stop-list in vm-minibuffer-show-completions.
* fixed free var ref "form" in vm-read-password.
* dropped some unreferenced vars in tapestry.el
* replaced (get-file-buffer buffer-file-name) with
  (current-buffer) in vm-get-spooled-mail, an obvious
  optimization.
* check inbox against name and truename in vm-get-spooled-mail to
  avoid being tripped by find-file-visit-truename being non-nil
  and get-file-buffer's obliviousness thereof.

VM 5.62 released (6 March 1994)

* vm-burst-digest was honoring vm-delete-after-bursting in the
  real folder instead of the virtual one; fixed.
* vm-add-message-labels didn't work in a virtual folder because
  vm-label-obarray was uninitialized; fixed.
* onw -> one in vm-visit-folder-other-window
* vm-get-new-mail, and vm-save-folder now map themselves over the
  associated real folders when applied to a virtual folder.
* since vm-save-folder now has a meaning when applied to virtual
  folders, vm-save-and-expunge-folder works for virtual folders.
* moved (intern (buffer-name) vm-buffers-needing-display-update)
  into vm-set-buffer-modified-p and out of vm-save-folder.
* incremented vm-modification-counter in vm-toggle-virtual-mirror.
* incremented vm-modification-counter in vm-build-virtual-message-list.
* fixed vm-su-line-count to use the real message offsets, not
  the virtual message offsets.
* fixed expunge in unmirrored virtual folder to remove virtual
  messages from the virtual message list of the real message.

VM 5.61 released (3 March 1994)

* moved vm-session-initialization and vm-load-init-file to
  vm-startup.el so as to avoid autoloading vm-folder.el for M-x
  vm-mail.
* removed call to vm-follow-summary-cursor from vm-mail so as to
  avoid autoloading vm-motion.el for M-x vm-mail.
* added L to regexp string in vm-compile-format.
* changed vm-error-if-folder-empty to complain about the folder
  type being unrecognized if that is the reason the folder is
  deemed empty.
* changed modeline to reflect the "unrecognized folder type"
  condition.
* use epoch::selected-window instead screen-selected-window if it
  is fbound.

VM 5.60 released (1 March 1994)

* vm-set-edited-flag -> vm-set-edited-flag-of
* forgot to fix interactive spec of vm-yank-message; fixed.
* vm-search18.el: signal error if vm-isearch is attempted in a
  virtual folder.

VM 5.59 released (26 February 1994)

* was calling pos-visible-in-window-p in wrong window in
  vm-scroll-forward; fixed, which takes care of preview/scrolling
  problems introduced in VM 5.58.
* fixed interactive spec of vm-yank-message-other-folder
* call vm-yank-message with only one arg in
  vm-yank-message-other-folder
* made vm-help-tale be a little less rude.
* '?' gives help in vm-read-string
* dropped top level requires in favor of autoloads
* use vm-selected-frame everywhere, instead of error-free-call
* do multi-screens in Lucid Emacs like multi-frames in FSFmacs.

VM 5.58 released (26 February 1994)

* New variables:
  + vm-included-text-headers
  + vm-included-text-discard-header-regexp
  + vm-summary-highlight-face
* New commands:
  + vm-add-message-labels (la)
  + vm-delete-message-labels (ld)
  + vm-virtual-help (V?)
* new semantics for vm-yank-message
* lookup vm-spool-move-mail and vm-pop-move-mail in
  file-name-handler-alist.
* set stop-point properly if using marks in
  vm-auto-archive-messages.
* in Makefile rm -f vm-search.el to evade a read only copy.
* don't assume the subject thread obarray is setup properly or
  ditto for the message id thread obarray.  User may have
  interrupted the thread build and screwed things up.
* V? gives some help for V commands.
* put ... after mark help.
* Shapiro typo fixes.
* switch to virtual buffer before comparing edited message to
  current message.  also compare the underlying real messages
  instead of the possibly virtual ones.  this makes the current
  message be repreviewed appropriately if it is virtual.
* don't generate a summary in vm if recover-file is likely to happen,
  since recover-file does nothing useful in a summary buffer.
* changed VM to use \040 instead of \020 in babyl attribute parsing code.
  obvious error in babyl spec.
* small change to vm-minibuffer-complete-word to handle label
  reading.  since we don't demand a match for label reads, we
  have to let the user insert a space for multi-word reads.
* undo now says what it is doing.
* undo now moves the message pointer to the message that it is
  affecting.
* fixed vm-scroll-forward to mark message as read _and_ scroll
  when point-max isn't visible on screen.  should help with
  vm-preview-lines == t.

VM 5.57 released (18 February 1994)

* added missing refs to -other-window and -other-frame commands in
  root commands so that window configurations work.
* shuffled targets in Makefile a bit.
* integerp -> natnump in vm-start-itimers-if-needed
* doc string updates.
* added missing -other-frame to the send-digest commands that
  needed them.  fixes the infinite frames, infinite recursion
  problem.
* don't assume a match when descending a nested auto folder
  alist.
* Shapiro typo fixes.
* New commands:
  + vm-set-message-attributes (bound to `a')
* made vm-auto-select-folder signal errors.
* default value of vm-check-folder-types is now t.
* fix modeline at end of vm-auto-archive-messages;
  vm-save-message whacks it.
* use unwind-protect in vm-auto-archive-messages to make sure
  mode line gets fixed if there's an error.
* deal with type 'unknown' in vm-save-message and vm-gobble-crash-box
* warn user about unparsable filth at end of folder.
* fixed typos of &optional in vm-startup.el
* indicate when threading display is enabled in the summary modeline.
* clear modification flag undos after saving folder.
* always setting vm-system-state to showing is wrong; changed it
  back to the way it was before 5.56.
* display sort keys in summary modeline when they are valid.
* used more care when lambda-binding inhibit/enable-local-variables
  must be careful not to change buffers while inside such a let
  binding as it might screw users who set local values of those
  variables.

VM 5.56 released (14 February 1994)

* vm-save-folder no longer expunges, this also means that 'q' and
  'S' keys no longer expunge.
* New commands:
  + vm-save-and-expunge-folder
  + vm-quit-just-bury
  + vm-other-frame
  + vm-visit-folder-other-frame
  + vm-visit-virtual-folder-other-frame
  + vm-mail-other-frame
  + vm-reply-other-frame
  + vm-reply-include-text-other-frame
  + vm-followup-other-frame
  + vm-followup-include-text-other-frame
  + vm-send-digest-other-frame
  + vm-send-rfc934-digest-other-frame
  + vm-send-rfc1153-digest-other-frame
  + vm-forward-message-other-frame
  + vm-forward-message-all-headers-other-frame
  + vm-resend-message-other-frame
  + vm-resend-bounced-message-other-frame
  + vm-edit-message-other-frame
  + vm-summarize-other-window
  + vm-other-window
  + vm-visit-folder-other-window
  + vm-visit-virtual-folder-other-window
  + vm-mail-other-window
* New variables:
  + vm-quit-hook
  + vm-digest-identifier-header-format
  + vm-confirm-mail-send
* non-nil non-t vm-delete-empty-folders now means ask first.
* select last message in real folder instead of first at startup
  if no unread messages are present (vm-thoughtfully-select-message).
* in vm-get-spooled-mail expand inbox file name rooted in folder
  directory if path is relative.
* don't do physical order sort unless moving messages physically
  in vm-sort-messages.  avoids markers pointing to nowhere at
  virtual folder startup with the threads display enabled.
* don't call display-buffer in vm-display-buffer unless
  vm-mutable-windows is t.
* always set vm-system-state to showing in vm-show-current-message,
  even if message is not visible.  The message-not-visible case is
  handled in vm-scroll-forward.
* moved window config of vm-quit to the beginning of the command
  instead of the end.
* added new window configuration action class: quitting
* don't assume new and unread flags are mutually exclusive in
  vm-show-current-message, they aren't for babyl folders.
* fixed tapestry-set-window-map to coerce Emacs into giving space
  to the right window in the root window case.  Works for FSF
  v19 Emacs.
* ignore trailing spaces in subject for threading and other "same
  subject" purposes.
* changed call to vm-update-summary-and-mode-line to
  vm-preview-current-message in the new same-subject motion
  commands (oops).
* gave vm-virtual-mode a docstring.
* don't allow vm-auto-archive-messages to recurse if a message
  archives to the same folder that it currently lives in.
* slightly restructured modeline to deal with new and unread flags
  both being set in babyl messages.
* burst digest fixes for From_-with-Content-Length and babyl
  folders.
* make require-final-newline be buffer local in VM buffers.
* don't set vm-block-new-mail in vm-mode-internal; it messes up
  the value set by the file recovery code.
* dropped frame configuration part of VM window configuration
  code.  too restrictive.
* use vm-default-folder-type in vm-save-message for empty folders.
* don't use sets for marking messages for summary updates; just
  consing up a list is much faster and the dups don't matter much
  with the speedy new summary code.
* use an obarray for vm-buffers-needing-display-update
* dropped sets.el from the distribution.
* put cursor in the To header for vm-resend-bounced-message.
* don't do Berkeley Mail compatibility stuff unless the current
  folder type is From_.
* use unwind-protect in vm-stuff-attributes to make sure folder
  modified status is reset properly on non-local exit.
* don't change modflag-of for virtual messages in
  vm-build-virtual-message-list; virtual messages don't use this
  flag anyway.
* added a level of indirection for virtual-messages-of so print
  will work on a message struct.

VM 5.55 released (9 February 1994)

* vm-set-babyl-frob-flag -> vm-set-babyl-frob-flag-of
* rewrote vm-delete-duplicates again; this one doesn't pitch the
  full names in hack-addresses mode.
* made vm-get-header-contents put grouping ^\(...)  around the
  header name regexp instead of just prepending ^.
* vm-yank commands now in the composing-message action class.
* made use of the bundled reporter.el and timezone.el optional in
  Makefile.
* New commands:
  + vm-next-message-same-subject
  + vm-previous-message-same-subject
* fixed bug in vm-assimilate-new-messages; work was being done to
  a virtual folder even if no new messages were added.
* internal thread tree is now built on demand.
* some mods to vm-sort-messages to deal with calls by threading
  code and values of vm-folder-read-only and vm-move-messages-physically.
* moved scattered autoload defs into vm-startup.el.
* doc string updates.
* errors from call to vm-expunge-folder are no longer ignored in
  vm-save-folder.
* default window configuration now uses the split screen mode for
  everything.
* dropped the skip-newlines-at-top-of-folder code.
* dropped single quotes from around sed command; unneeded since
  we're not calling the shell.
* made vm-change-folder-type work; fixed babyl related problems
  along the way.
* run copy-sequence on new-messages before sorting in
  vm-assimilate-new-messages to keep sorting from scrambling the
  value we need to return.
* fixed bugs in vm-convert-folder-type; have to be careful about
  update order since some code depends on correct separator
  strings being present.
* added special code to the POP mail retriever needed for babyl
  crash boxes.
* block mail new mail retrieval while we're getting new mail;
  timer processes might be fired up while the POP code is running.
* added another missing set-buffer-modified-p in vm-gobble-crash-box.

VM 5.54 released (4 February 1994)

* made vm-discard-cached-data fill the cache with nils instead of
  allocating a new array.  necessary so that the virtual messages
  get their caches wiped too.
* vm-edit-message now unhightlights the edit buffer.
* moved unthread/rethread stuff from vm-edit-message-end to
  vm-discard-cached-data.
* removed thread data prerefs from vm-edit-message and
  vm-discard-cached-data; I no longer think they are needed.
* changed emacs to $(EMACS) in Makefile for make-autoloads run.

VM 5.53 released (3 Feburary 1994)

* got rid of reuse of count variable in vm-delete-message; used
  del-count instead.  this was hosing motion after
  vm-delete-message-backward.
* fixed bugs in vm-delete-duplicates; was calling vm-delqual with
  an unfrobbed list of addresses; if 'all' was non-nil was
  resetting list and setcdr'ing prev inappropriately.
* Shapiro typo fixes.
* fixed vm-set-xxxx-flag to not add to the undo record list
  twice; more confusion due to virtual folders.

VM 5.52 released (3 February 1994)

* BABYL file support.
* fixed noautoload target in Makefile to depend on reporter.elc.
* actually put the reporter.el file in the distribution (oops)
* fixed vm-set-xxxx-flag to notice the real message when a
  virtual message flag is set.
* added loop detection code to vm-thread-list.
* added 'redistributed' message attribute, because BABYL files
  support this.  vm-resend-message makes a message
  'redistributed'.
* %A summary format spec now seven characters wide instead of
  six.
* no longer set vm-message-pointer in composition buffers.  It
  doesn't look like it's used anywhere anymore.
* needed make-local-variable calls in some places in vm-reply.el to
  avoid referencing a global variable.
* don't auto-get-new-mail if vm-folder-read-only is non-nil.
* don't try to startup folder read only for vm-yank-message-other-folder.
* fixed logic error in vm-assimilate-new-messages; if real folder
  was empty; the first new messages that arrived would not be
  offered to virtual folders for assimilation.
* fixed logic error in vm-build-virtual-message-list that causes
  new message list not to be installed into an empty virtual
  folder if vm-build-virtual-message-list was passed a message
  list.
* added some code to vm-save-message and vm-assimilate-new-messages to
  get the message pointer set properly when live folders inherit their
  first message from another folder.
* rewrote vm-delete-duplicates to use an obarray.
* fixed another file name expansion in wrong dir problem in
  vm-save-message.
* fixed bug in vm-pop-move-mail; needed (car (cdr ...)) instead
  of (car ...) to get password from assoc list.
* unhighlight text copied into composition buffers.
* use mail-position-on-field in vm-send-digest.
* anonymous virtual folders now can acquire new messages when
  their real folders do.
* drop error free calls in vm-window-loop in favor of checking
  for only one window before doing a delete-window.  Lucid Emacs
  blows away the containing screen if you delete the last
  ordinary window.
* preserve buffer modified status of virtual folder after
  erase-buffer call in vm-do-needed-mode-line-update.
* replaced timezone-floor with Kanazawa Yuzi's fixed version.
* don't makunbound unless there are no message left with a
  subject; previously it was done when there was one message left
  that was a child of the subject, which was quite wrong.  This
  required keeping track of every message with a particular
  subject, which wasn't being done before.
* reset thread-indention-of cache and thread-list-of in vm-unthread-message
* move vm-keep-mail-buffer further down in vm-mail-send so that
  attribute update code can do its work before the buffer
  potentially goes away.
* fixed logic error in vm-save-message; non-conversion error
  message check was reversed regarding virtual messages.
* made vm-save-message report the number of messages saved,
* made vm-delete-message and vm-undelete-message report the
  number of messages deleted/undeleted if marks are used.
* made vm copy the read-only state of a visited folder--- if the
  file was read-only when vm first visits it, the folder will
  be read-only, too.
* added read-only flag to vm-mode; prefix arg interactively.
* New variables:
  + vm-summary-subject-no-newlines
  + vm-keep-crash-boxes
* New commands:
  + vm-toggle-virtual-mirror
  + vm-change-folder-type
* virtual-messages-of in real message was not being updated for
  non-mirrored virtual folders... wrong wrong wrong.  fixed.
* vm-stuff-virtual-attributes was stuffing the data using the
  header offsets of the virtual message instead of the real
  message's offsets... (woo, woo!) fixed.
* doc string fixes
* preserve summary buffer modified status when doing summary
  buffer updates since it's supposed to reflect the folder
  buffer's status.
* moved vm-summary-redo-hook run to be in the summary buffer.
* made unmirrored virtual message not share a summary with real
  messages (oops).
* moved vm-su-summary preref to fill the cache out of
  vm-mark-for-summary-update and into vm-stuff-attributes.
* changed vm-check-for-killed-summary to be a function, and made
  it reset su-start-of and su-end-of of all messages if the
  summary buffer has been killed.
* changed thread indent calculator to start counting from the
  first ancestor that is in the current folder, instead of always
  counting from the root message.
* set require-final-newline to nil for vm-mode buffers.  needed for
  babyl folders.
* added more test data to detect brokenesses in mail-extr.el.

VM 5.51 released (29 January 1994)

* docstring fixes.
* fixed logic behind how schedule-reindents is set in
  vm-build-threads; startup with ought to be somewhat faster.
* check for vm-message-pointer == nil in vm-sort-messages to
  avoid problems when sorting by thread at startup.
* added reporter.el to distribution.
* changed %* to %+ in modeline in hopeful anticipation of this
  being added to v19 Emacs.
* made sure summary modflag was updated after folder saves; needed
  to add folder buffer to vm-buffers-needing-display-update.
* changed vm-force-mode-line-update to use force-mode-line-update
  if it is bound.
* made vm-make-virtual-copy restore the modified status of the
  virtual folder buffer after doing the copy.

VM 5.50 released (28 January 1994)

* found and fixed another bug in the threading code that can
  cause looping; interned a symbol into the wrong obarray.
* made vm-save-message-sans-headers remember that last file
  written to, and not claim that a file was written to when it
  wasn't.
* made vm-save-message not claim that a folder was written to
  when it wasn't, and to not visit files, check folder types and
  so on when the prefix arg given was 0.
* fixed doc for vm-summary-uninteresting-senders; pointer -> arrow.
* made sets-typetag be defvar'd instead of defconst'd.  avoids
  trouble if sets.el is reloaded.
* fixed expunge; it was checking for virtual message after the
  virtual message list of the message had been emptied.
* fixed vm-build-virtual-message-list; when new messages were
  assimilated, the old message list overlapped the new causing
  duplicates in vm-virtual-messages-of.
* dropped the rest of the undocumented stuff for hilit19.

VM 5.49 released (25 January 1994)

* changed timezone.el not to call abs directly.
* changed vm-mail-send-and-exit to notice if it's no longer in
  the composition buffer after vm-mail-send and not to bury
  whatever buffer it happens to be in.
* changed make-autoloads to use Lisp, create proper interactive
  autoloads and to include the doc strings.
* cached date of oldest message in a thread; thread display now
  sorts threads in chronological order of the oldest message
  known to have been in the thread during this VM session.
* fixed threading by subject bug, that I suspect caused endless
  looping in some folders.
* fixed some of the problems with vm-mutable-windows non-t
  non-nil; most in tapestry.el; one in vm-window.el.
* doc fix in vm-summary-format var doc, h -> H.

VM 5.48 released (23 January 1994)

* @cp -> cp in Makefile.
* fixed bug in vm-load-window-configurations where
  vm-window-configurations is set to t.
* Shapiro typos fixes.
* added timezone.el to the distribution.

VM 5.47 released (23 January 1994)

* vm-window-configuration-file now has a default value of
  "~/.vm.windows".
* vm-default-window-configuration is now used if reading a
  configuration failed.  previously it would not be used if the
  file vm-window-configuration-file pointed to did not exist or
  was empty.
* expunge caused highlighted area to move over to some unwanted
  areas of text.  made highlighting function nuke the face
  property of the whole message to try to clean this up before the
  user gets to see it.  user will still see it during searches,
  oh well.  real fix is for Emacs to move the properties when the
  text shifts because of insert/delete, which I think Emacs will
  do in the next release.
* first crack at thread support.
  New variables:
  + vm-summary-show-threads
  + vm-summary-thread-indent-level
  * vm-subject-ignored-prefix
  * vm-subject-ignored-suffix
  New commands:
  + vm-toggle-threads-display (C-t)
  + vm-goto-parent-message (^)
  + vm-mark-thread-subtree (M T)
  + vm-unmark-thread-subtree (M t)
* Variables that went away:
  + vm-summary-show-message-numbers
* summary format specifiers %n and %* are allowed again.
* added slot in message struct for the summary to use for its
  padded copy of the message number.  everything else uses the
  unpadded number.
* fixed vm-expunge-folder; a couple of problems with initiating
  expunges from a virtual folder--- some stuff was being done
  twice, and the physical expunge was occurring in the virtual
  buffer instead of the real buffer.
* gave vm-mark-for-summary-update an optional arg that says
  "don't kill the summary entry cache".  this is used by thread
  and marks commands, which don't change anything that the
  summary entry could cache.
* vm-visit-virtual-folder, vm-get-new-mail and vm-burst-digest
  work harder at keeping the totals blurb on the screen in the
  face of autoload messages, summary status, etc.
* made vm-set-numbering-redo-{start,end}-point update
  vm-buffers-needing-display-update.
* made vm-undisplay-buffer not use save-excursion, which
  apparently does a switch-to-buffer in v18 Emacs.
* made vm-undisplay-buffer not select a dead window, since this
  can crash v18 Emacs.  Rewrote it to use
  vm-delete-windows-or-frames-on which already has the smarts
  about not selecting dead windows.
* don't emit totals blurb in vm unless it's a full startup.
  cured problem of calling (message ...) when totals-blurb is nil.
* changed call to buffer-disable-undo to use fboundp to check
  first, and call buffer-flush-undo if it is not fbound.
* disable undo in the summary buffer.
* updated vm-mode doc with missing variables and keys.
* changed make-autoloads to create proper autoload defs for
  macros and to trim the suffixes from the file names.
* folder is now expanded properly in vm-visit-folder before
  calling vm.
* if call of read-file-name with five args fails (v18 doesn't
  take the INITIAL-INPUT arg) call it with the expansion dir set
  to what would have been the fifth arg.
* Shapiro typo fixes.
* don't signal error in vm-expunge-folder if there are no deleted
  messages.
* fixed summary rebuild problem in vm-expunge-folder related to
  virtual folders.
* changed vm-kill-subject to use vm-so-sortable-subject
* added new action class "marking-message" and put the mark and unmark
  commands in it.
* some of the motion commands now follow the summary cursor.
* dropped a bit of stupidity at the end of
  vm-next-command-uses-marks; why o why was I prereading the next
  input event?
* fixed message assimilation into virtual folders.
* made vm-move-message-forward silently not try to move a message
  physically if it's in a virtual folder.
* updated documentation for vm-get-new-mail.
* dropped the refcard from the distribution.
* if summary format doesn't match the cache summary format, force
  a restuff of the cache of all messages when the folder is saved.

VM 5.46 released (17 January 1994)

* added header highlighting for FSF Emacs 19.
  + slightly different sematics for vm-highlighted-header-regexp
    to match the new header name matching rules.
  + new variable vm-highlighted-header-face to specify what face
    to use for highlighting.
* fixed make-autoloads to create autoloads pointing to .elc files
  instead of .el files.
* updated laggard copyright notice in startup message.
* chopped out undocumented hook for hilit19 in
  vm-preview-current-message.

VM 5.45 released (17 January 1994)

* Shapiro typo fixes
* editing a message that already had an edit buffer caused window
  config failure; window config code couldn't find the edit
  buffer, because the current buffer was not the edit buffer.
  fixed by calling set-buffer for this case in vm-edit-message.
* dropped unneeded calls to vm-previous-window in vm-window.el.
  calling (next-window w 'nomini) is sufficient to avoid the
  minibuffer and to avoid drifting into another frame while
  evading the minibuffer.
* make vm-next-message do its own window configuration when
  called by vm-delete-message and others, so auto-motion pops up
  the correct configuration.
* VM now has a default window configuration.
* the unwind form in set-tapestry could select a dead frame; we
  now check with frame-live-p before selecting the saved frame.
* removed the kludge from tapestry-set-frame-map, it didn't work
  reliably anyway.
* changed vm-undisplay-buffer not to delete a frame unless there
  only one window in it.
* VM now autoloads all of its modules on demand.  some functions
  moved to different modules for better locality of related
  functions.  some care given to how display update lists
  were built so as to avoid calling summary update functions on
  messages that actually are part of a folder that does not have a
  summary.  Turned out mostly to be a waste, the summary gets
  loaded almost immediately unless serious contortions are made.
* New files:
  make-autoloads - build the autoload defs
  vm-startup.el - contains all VM entry point functions
  vm-minibuf.el - contains most of VM's minibuffer read functions.
* work harder at vm startup to keep the totals blurb on the
  screen despite all the autoload tripe blasting the
  minibuffer.
* added a documented cardinality function to sets.el.
* made vm-emit-eom-blurb not call vm-su-full-name, which avoids
  dragging in the summary code unnecessarily.
* check for killed folder buffer in vm-mark-replied and
  vm-mark-forwarded to avoid trying to set-buffer to a killed
  buffer.
* moved a ( in a docstring right to avoid it being in column 0.

VM 5.44 released (16 January 1994)

* fixed free variable reference (length) in vm-edit.el.
* added a few missing commands to the supported window
  configurations list.
* wrapped call to mail-send in save-excursion to protect against
  a buffer change.
* moved call of vm-rename-current-mail-buffer in front of
  vm-keep-mail-buffer so that if vm-keep-sent-messages is nil we
  won't rename some random buffer because the current buffer had
  been killed.
* added doc for vm-submit-bug-report to vm-mode doc.
* added optional first argument to tapestry which allow
  specification of which frames to return info about.
* made vm-save-window-configuration record configuration info
  only about the selected frame if vm-mutable-frames is nil.
* %* format spec no longer allowed in summary format, for the
  same reason the %n spec was disallowed.
* made the "get new mail" call of vm-assimilate-new-messages in
  vm not read message attributes, so we don't inherit X-VM stuff
  from messages sent by others.
* was calling select-frame in set-tapestry, changed to call
  tapestry-select-frame instead.
* made tapestry and set-tapestry no change Emacs' idea of what the
  selected-frame is.
* made vm-set-window-configuration more friendly to errors
  + if the window config requires a summary buffer and none is
    present and the folder buffer isn't displayed either, then
    display the folder buffer where the summary would have been
    displayed if it existed.
  + if the window config requires an edit, composition, or
    summary buffer and it is not present, delete windows and
    frames that would have displayed it.
* moved "hide" check in vm-scroll-forward to be prior to the
  first usage to the window we're checking.
* Shapiro typo fixes, as usual, sigh.
* more virtual folder selectors
* made virtual folder selectors that require dates be more
  flexible and fill in incomplete date specifications.
* removed redundant and incorrect calls to vm-check-count from
  vm-mark-message and vm-unmark-message.
* fixed bug in vm-timezone-make-date-sortable; used car to access
  chace when should have used cdr.
* New commands:
  + vm-mark-matching-messages
  + vm-unmark-matching-messages
  + vm-create-virtual-folder
  + vm-apply-virtual-folder
* default value of vm-virtual-mirror is now t.
* added missing mapping of vm-virtual-mode to `message' in
  vm-set-window-configuration.
* fixed sent-before and sent-after selectors to call
  vm-so-sortable-datestring instead of vm-so-sortable-date.
* modeline indicates folder virtuality by surrounding the buffer
  name with parens, eats less space than "virtual " particularly
  when the folder are nested.
* fixed vm-beginning-of-message and vm-end-of-message so they
  again work when invoked from the summary buffer.
* added vm-beginning-of-message, vm-end-of-message, and
  vm-expose-hidden-headers to the reading-message action class.
* changed vm-expose-hidden-headers to force the displaying of the
  folder buffer.
* changed calls of get-buffer-window to vm-get-buffer-window so
  that searches for buffers in windows fan out to all frames when
  it is appropriate.
* added let-bind of buffer-read-only to nil around call to
  erase-buffer in vm-do-needed-mode-line-update.
* rewrote vm-mark-for-summary-update again, and hopefully got it
  right this time.
* fixed problem in vm-virtual-quit; vm-message-list needed to have
  expunged messages stripped before vm-message-pointer was rehomed
  there. virtual folder can now shrink to 0 messages without errors.
* fixed some bad logic in vm-assimilate-new-messages that caused
  the summary to be rebuilt every time you ran M-x vm.

VM 5.43 released (14 January 1994)

* changed another reference to window-frame in tapestry.el that I
  missed, sigh.
* added vm-mutable-frames to var list in vm-submit-bug-report
* put vm-edit-message-end and vm-edit-message-abort into the
  reading-message and startup action classes.
* changed vm-set-window-configuration to bail if the current
  buffer isn't a VM related buffer.
* changed vm-set-window-configuration to create some descriptive
  buffers when a configured buffer can't be found, to let users
  when they've flubbed the window configuration setup.
* made vm-convert-folder-header-types a bit more robust
* made vm-find-leading-message-separator go to point-max for
  From_-with-Content-Length folders if no separator is found just
  as it does for the other folder types.
* made vm-edit-message-end properly recompute the Content-Length
  header for the From_-with-Content-Length type.
* made vm-edit-message-end munge message separators that it finds
  in an edited message before the message is reincorporated into
  the folder.
* made vm-convert-folder-types munge message separators of the
  new folder type as part of the conversion process.
* Greg Shapiro's and Andy Scott's typo fixes
* %n spec is gone from the summary format; new summary cache code
  would cause the messaage number to be cached and this caused
  many problems.
* New variables:
  + vm-summary-arrow
  + vm-summary-show-message-numbers
* New command:
  + vm-forward-message-all-headers

VM 5.42 released (13 January 1994)

* made tapestry-frame-map call tapestry-window-frame instead of
  window-frame directly, which bombs under v18 Emacs.
* made vm-get-mail-itimer-function call
  vm-assimilate-new-messages with a first arg non-nil, so that
  attributes found in newly arrived  messages will be ignored.
* removed some local-set-key calls in vm-do-reply that I forget
  to take out.
* dropped the keymap parent stuff altogether, mimic mail-mode
  bindings in VM's mail mode, use vm-edit-message-map and simply
  override text mode map or whatever, copy the vm-mode-map to
  create the summary mode map.
* drop cat-chow from the variable list in vm-submit-bug-report.
* added a salutation and subject to vm-submit-bug-report
* corrected vm-edit-message-end typo in vm-vars.el
* moved vm-isearch-forward back to M-s, took vm-isearch-backward
  off C-r.
* vm-goto-message now does not follow the summary cursor if a
  prefix argument is given.
* added vm-mail-send-and-exit to the reading-message and startup
  action classes.  ought to keep the *scratch* buffer from popping
  after sending mail when reasonable window configurations are enabled.
* New variables:
  + vm-trust-From_-with-Content-Length
* signature now appears after forwarded messages and digests,
  instead of before them.
* added tapestry autoloads.
* removed more references to vm-ml-attributes-string
* turned off modification flag in crashbox buffer after folder
  conversion to keep kill-buffer silent.

VM 5.41 released (10 January 1994)

* fixed "~/INBOX" dreg in vm-get-folder-type.
* added more test data to detect for broken
  mail-extract-address-components implementations
* added SHELL = /bin/sh to Makefile.
* added a current folder buffer slot to message struct so that
  (marker-buffer (vm-start-of message)) is no longer necessary.
* VM no longer changes the message pointer on async auto-get-new-mail
  unless the folder was previously empty.
* VM now queries for a POP password if the password is "*" in
  vm-spool-files.
* made vm-visit-virtual-folder honor vm-startup-with-summary.
* older Lucid Emacs versions apparently don't have the improved
  insert-file-contents; changed test in vm-get-folder-type to deal
  with it.
* took vm-yank-message-other-folder off C-c y.
* some fixes for the keymap troubles
  + use keymap parenting when we can
  + vm-mail-mode-map
  + vm-edit-message-map
* added support for the System V Content-Length folder type.
* much work on the display code
  + added vm-display clearinghouse function for display work
  + per command window configuration support added.
  + weird window configuration related scrolling bugs fixed
* New variables:
  + vm-mutable-frames
  + vm-display-buffer-hook
  + vm-undisplay-buffer-hook
  + vm-reply-ignored-reply-tos
  + vm-move-messages-physically
  + vm-tale-is-an-idiot
  + vm-summary-pointer-update-hook
* Variables that went away:
  + vm-retain-message-order (message order is always retained now.)
  + vm-mail-window-percentage (have to use window configs for this now.)
* frame support added to tapestry.el
* file recovery and reversion now deals with virtual folders.
* SPC now invokes completion in vm-read-string, which means
  minibuffer reads of sort keys now have completion on both TAB
  and SPC.
* various minor contortions to quiet the compiler.
  + added some defvars
  + moved error condition puts to vm-misc.el
  + added a compile-time preloaded file vm-byteopts.el
* added documentation for more VM entry points to README.
* strip quotes from ends of full name in vm-su-do-author.
* fixed attribute stuffing code to properly correct the changed
  value of vm-headers-of in all cases.
* made sets.el use prin1-to-string instead of (format "%S" ...)
  since %S doesn't work under v18 Emacs.
* save the correct modeline variables in vm-search18.el;
  vm-ml-attributes-string is gone.
* change vm-su-do-month to avoid using all those symbols
* rewrote vm-search19.el to work and work better.
* vm-isearch-forward moves from M-s to C-s
* vm-isearch-backward command created.
* vm-isearch-backward on C-r
* made the message separator string generator functions look at
  the local variable that they set.  by looking at the wrong
  variable they used the wrong folder type.
* added needed narrow-to-region to vm-pop-retrieve-to-crashbox
  so that folder type could be correctly deduced.
* jwz improvements
  + fixed width hh:mm:ss
  + negative precision in summary spec means truncate from the right
  + vm-delete-duplicates rewritten to be slow (and not reorder elements)
  + vm-delete-duplicates also handles addresses specially if asked
* fixed bug in vm-default-chop-full-name; it should result a
  non-nil value in the 'address' part of the list.
* fixed typo in vm.texinfo
* fixed unnoticeable bug in vm-set-{summary,numbering}-redo-start-point
* fixed vm-expunge-folder to not do redundant sets of the summary
  and numbering start points.
* fixed vm-expunge-folder to be lock out interrupts at
  appropriate places.
* fixed vm-expunge-folder to expunge the real message when a
  mirrored virtual message is expunged.
* changed vm-build-virtual-message-list to allow a list to be
  built from a virtual folder's message list by looking through
  it to the real messages underneath.  This is a prelude to
  on-the-fly virtual folder creation.
* added many new virtual folder selectors, including 'and', 'or'
  and 'not'.
* vm-resend-message now strips the Sender header from the message.
* vm-move-message-forward locks out interrupts in the right place
  to protect message list integrity.
* fixed vm-sort-messages bug that caused it to put the message
  into the wrong physical order.
* added two commands: vm-move-message-forward-physically and
  vm-move-message-backward-physically.
* fixed bug in vm-resend-bounced-message; if it found no header
  separator line it would insert one in the wrong place.
* new semantics for vm-startup-with-summary
* entire summary entries now cached, which means almost now work
  to generate a summary at startup now.
* VM now does summary, numbering and modeline updates even if it
  is quitting.  virtual folder displays will be out of sync otherwise.
* VM now ignores message attributes that arrive attached to new mail.
* last vm-gargle-uucp dreg removed.
* VM no longer sets inbox file permissions to 600.
* added some undocumented hooks for hilit19.el until it starts
  using the proper hook variables.
* added protection for the variable this-command to the
  (interactive) forms that needed it.
* added protection for the variable last-command to the
  (interactive) forms that needed it.

VM 5.40 released (21 December 1993)

* made vm-edit-message-end preview if edited message is current;
  comparison bug caused it not to.
* removed extra definition of vm-do-needed-mode-line-update
* fixed mail-extract-address-components test code.
* fixed problem with summary mode line not being updated if
  expunge empties the folder.
* fixed Makefile install target to copy vm.info to $(INFODIR)/vm .
* more doc corrections from Greg Shapiro.
* fixed long line Summaries node in Info document.
* fixed bug in vm-default-chop-full-name, should use list instead
  of cons for the return value.

VM 5.39 released (21 December 1993)

* sanity checked all bindings of case-fold-search.
* sanity checked all searches for reasonable ambient values of
  case-fold-search.
* adopted most of Kevin Rodgers latest round of changes to
  vm-su-do-author, to parse full names and addresses a bit better.
* changed 'file' to 'folder' in vm-save-message to fix an invalid
  variable reference.
* New variables:
  + vm-check-folder-types
  + vm-convert-folder-types
* Variables that have gone away:
  + vm-gargle-uucp
    (wrote this for late eighties melee, things are different now)
* added call to set-window-point in vm-preview-current-message so
  that window-point is set properly in time for a vm-howl-if-eom
  call from a parent function.
* fixed set-xxxx-flag and vm-update-message-summary to create
  correct update lists taking into account virtual folders.  The
  code wasn't quite right.
* fixed vm-update-message-summary not to try to use buffer-name
  to determine if the vm-su-start-of is a live buffer.  Just
  marker-buffer will do, apparently.  Killing the summary should
  safe to do again.
* added a vm-submit-bug-report command based on reporter.el.
* emit totals blurb in various places before selecting a message
  to prevent the non-previewers from altering the new message
  count and confusing themselves.
* checked for existence of vm-arrived-message-hook before running
  the loop.
* put vm-howl-if-eom after the vm-update-summary-and-mode-line
  because the howl contains the message number and the correct
  message number may not be computed in some cases until after the
  update.
* fixed many bugs with virtual folders.
* incremented vm-modification-counter in vm-burst-digest which
  should make the totals blurb be recomputed; previous it wasn't.
* removed a couple of (apparently) unneeded re-search-forward's in the
  message yanking code.
* added X400-Received to a couple of the default header discard
  lists.
* fixed POP retriever to check for servers that DON'T strip
  message separators.
* -hooks vs. -hook; hobgoblins win.
* added some defvars to quiet the v19 compiler (a little)
* made vm-spool-move-mail kill the miserable buffer if nothing
  went wrong.
* added doc string for vm-summary-mode-hook
* added more general date parser
* added 'H' (hh:mm)  summary specifier
* normalized vm-su-year, at least 3 or 4 digits always.
* made vm-auto-archive-messages be applicable to marked messages
  only.
* made MNMU == Mu, i.e. vm-unmark-message is applicable to marked messages.
* made vm-next-message and friends applicable to marked messages.
* incorporated typo and spelling fixes from Gregory Shapiro
* fixed vm-get-folder-type to widen before trying to get to the
  beginning of the buffer.
* updated README
* change mode line update code to not create strings at every
  update.
* changed update code to not rebuild the mode line regardless of
  whether it did or did not change.
* fixed bug in vm-write-string; point was not supposed to be
  restored on exit.
* fixed bug in vm-save-message; said write-region when I meant
  insert-buffer-substring.
* used new insert-file-contents features in v19 Emacses to
  replace running sed.
* called vm-su-from instead of vm-from-of in
  vm-rfc1153-or-rfc934-burst-message; vm-from-of can be return
  nil.
* fixed vm-leading-message-separator and
  vm-trailing-message-separator to use the
  right type variable.
* made nil an allowable value for vm-forwarding-digest-type.
* changed vm-stuff-attributes to use insert-before-markers which
  should keep the attributes headers from leaking into view.
  (window-start is a marker you see and ...)
* changed the RFC 934 digest banners messages, they were scaring
  the tourists.
* changed dashes to spaces in mode line.
* 'make' != 'make all' in Makefile anymore
* Info file created is now named vm.info.

VM 5.38 released (16 December 1993)

* made vm function check vm-block-new-mail before calling
  vm-get-spooled-mail and thereby avoid having an error signaled
  after M-x recover-file.
* putting a call to vm-howl-if-eom into vm-show-current-message
  was a mistake.  moved to vm-scroll-forward, which is a better
  place for it.
* changed vm-delete-message to really honor vm-circular-folders
  if vm-move-after-deleting is nil.  Also fixed a similar problem
  in vm-undelete-message, plus a typo where delete was used when
  undelete should have been.
* fixed vm-so-sortable-subject, needed case-fold-search set to t.
* changed vm-pop-move-mail to clear the trace buffer before
  trying to open a connection.  This is to prevent confusion
  about old output in the trace buffer.
* fixed endless loop bug in vm-mail-yank-default that occur when
  vm-included-text-prefix is "".
* changed folder parser back to just matching "From " for the From_ type.
* New variables:
  + vm-summary-mode-hook
  + vm-summary-uninteresting-senders-arrow
  + vm-summary-mode-map
* Slightly different semantics for vm-summary-uninteresting-senders.

VM 5.37 released (15 December 1993)

* fixed "wrong type argument" arrayp nil problem in
  vm-pipe-message-to-command. (m -> (car mlist))
* fixed "intersting" and "vm-message-type" typos in vm-summary.el
* added a clarification about byte-compiler warnings in the
  README file and corrected a typo in an autoload line; one of
  the vm's should be vm-mode.
* fixed vm-delete-window-configuration to actually read a window
  configuration.  Not sure when this was broken or whether it
  actually ever worked!
* fixed unescaped quotes in docstring for
  vm-summary-uninteresting-senders
* made vm-edit-message be a bit more careful about what it sets
  the edit buffers local value of vm-message-pointer to be.
* made the string returned by vm-safe-popdrop-string look a bit
  better.
* added support for mail-default-headers
* added defvars for mail-default-headers and mail-signature for
  v18 Emacs, to avoid referencing symbols with void values.
* fixed bug in vm-resend-message that caused the first to the
  current message to be copied into the composition buffer.
* fixed problem with vm-expunge-folder not updating the display
  after completing its work iff the current message was not
  expunged.
* made vm-show-current-message not mark a message as read unless
  the folder buffer had a window opened on it.
* added (vm-howl-if-eom) to vm-show-current-message now that it
  checks for a window.
* prevent effects of vm-summary-uninteresting-senders from
  leaking into non-summary areas.
* New variable:
  + vm-retrieved-spooled-mail-hook
* added vm-last-save-folder internal variable to track the last
  visited folder and offer it as a default for the next
  vm-visit-folder.

VM 5.36 released (14 December 1993)

* no more marker sharing between message in real folders.
  Previously the start and end pointers were shared between
  consecutive messages.
* changed vm-clear-all-marks only update messages that actually
  have marks, and only update the summaries of updated messages.
* let* -> let in some places
* dropped one *+ regexp from vm-kill-subject
* vm-move-after-deleting non-nil and non-t means move as if
  vm-circular-folder is nil.
* virtual-folders work now
* vm-preview-lines == t means preview but display a windowful of text
* fixed mark-even-if-inactive type in vm-reply.el; replies under
  transient mark mode should work now under FSF v19.
* doc fixes and changes
* fixed bug in vm-scroll-backward, numeric prefix args other than
  simple strings of C-u's were causing inappropriate forward
  scrolling.
* removed strange no-op in vm-record-and-change-message-pointer
* default value of vm-preview-read-messages is now nil.
* call-process doesn't return a exit status in all Emacs, only
  check exit status of movemail run on those Emacses that return
  it.
* digest code redone, refurbished.
* RFC1153 digest support
* more status messages at startup so user knows Emacs is still
  alive while visiting a large folder.
* protected against letter bombs when vm-visit-when-saving is t.
* grouping code is gone
* New variables:
  + vm-forwarded-headers
  + vm-unforwarded-header-regexp
  + vm-forwarding-digest-type
  + vm-digest-burst-type
  + vm-digest-send-type
  + vm-rfc934-digest-headers
  + vm-rfc934-digest-discard-header-regexp
  + vm-rfc1153-digest-headers
  + vm-rfc1153-digest-discard-header-regexp
  + vm-auto-get-new-mail
  + vm-recognize-pop-maildrops
  + vm-jump-to-new-messages
  + vm-jump-to-unread-messages
  + vm-mail-mode-hook
  + vm-edit-message-hook
  + vm-resend-bounced-headers
  + vm-resend-bounced-discard-header-regexp
  + vm-resend-headers
  + vm-resend-discard-header-regexp
  + vm-init-file
  + vm-summary-uninteresting-senders
  + vm-summary-redo-hook
  + vm-reply-hook
  + vm-mail-hook
  + vm-resend-bounced-message-hook
  + vm-resend-message-hook
  + vm-send-digest-hook
  + vm-select-message-hook
  + vm-select-new-message-hook
  + vm-select-unread-message-hook
  + vm-arrived-message-hook
  + vm-visit-folder-hook
* Variables that have gone away:
  + vm-group-by
  + vm-rfc934-forwarding
  + vm-edit-message-mode-map
* timer based auto-retrieval of new mail implemented
* 'vm' function cleanup and should protect and warn about precious
  auto save files.
* dropped the vm-buffer-modified-p kludge
* new semantics for vm-spool-files
* M-x recover-file works properly in a VM folder buffer now.
* fixed defvar of vm-spool-files so that VM can be dumped with Emacs.
* vm-resend-bounced-message now has header trimming variables
* vm-resend-message now has header trimming variables and works
  like other outbound mail commands.
* regexps are now allowed in the HEADER-NAME field in
  vm-auto-folder-alist
* when reading the folder name, vm-save-message now uses the
  default folder name as initial input if it is a directory.
* VM now always stuffs attributes in vm-save-message; to do otherwise can
  cause the deleted' attribute to be saved sometimes.
* change vm-save functions to update the summary as they work so
  that if an error occurs the display will be up-to-date.
* ditched overlay-keymap
* ditched header highlighting code
* fixed vm-yank-message-other-folder to restore window environ
  before yanking the message.
* fixed vm-pipe-message-to-command to save read its command in
  the right context.
* made vm-save-message convert messages to the target folders
  format if necessary.
* POP support via vm-spool-files
* made how VM matches headers be consistent.  Put a colon at the
  end of header names if you want exact matches, leave it off if
  you just want prefixes.

VM 5.35 released (25 August 1993)

* fixed vm-fsf-emacs-19-p to not confuse FSF Emacs with Lucid
* changed code to deal with screen.el's rename to tapestry.el
* set enable-local-variables to nil in vm-build-virtual-message-list
* began work on code in vm-virtual.el to get virtual folders to
  work right.  not finished yet.
* expanded and reorganized message structure for virtual folders
* added patch from jwz to use set-keymap parent in
  vm-edit-message under Lucid Emacs.

VM 5.34 released (15 August 1993)

* used -l texinfmt explicitly in Makefile to get texinfo-format-buffer loaded
  under Emacs 19.18+.
* ditched use of vm-overlay-keymap in FSF 19 Emacs.
* use unread-command-events for FSF v19 in vm-next-command-uses-marks
* moved to using buffer-disable-undo rather than
  buffer-flush-undo; hooked them together for compatibility with
  v18.
* set folder type in more places and allowed empty folders to
  match all types.
* made vm-rename-current-mail-buffer look for Bcc header for
  possible addition to buffer name, before defaulting to the
  anonymous horse.
* fixed vm-edit-message-end bug; needed to widen so
  insert-buffer-substring inserts the whole edit-buf into the
  folder buffer.
* added a bunch of patches from Jamie Zawinski--- some for general
  VM bugs, some to let VM run under Lucid Emacs.
    - support for Lucid Emacs keymaps in vm-overlay-keymap
    - fixed some inadvertent free variable references
    - use % instead of mod to avoid getting clobbered by cl.el macros
    - check return status of movemail
    - support enable-local-variables for FSF19 and Lucid
    - use next-command-event if present for Lucid Emacs
    - bind zmacs-regions so that (mark) behaves like (mark t)
    - add support for mail-citation-hook for FSF19.
    - regexp fix in vm-compile-format that should fix a format
      bug as well at comply with whatever new POSIX regexp rot
      has come down the pike.
* more regexp fixes so that Emacs won't take an eternity to
  start VM
* vm.texinfo fixes
* fixed logic error in dealing with vm-visible-headers and
  vm-invisible-header-regexp.  If header was matched by both
  variables it would be displayed, which is wrong.

VM 5.33 released (11 April 1993)

* fixed "wrong type argument arrayp, nil" error when primary
  inbox is empty.
* applied Frank Bresz's fix for vm-visit-folder expanding the
  minibuffer read filename in the wrong directory.
* applied Jamie Z's fix for the old, old scrolling problem when
  scrolling from the summary buffer.
* changed default value of vm-flush-interval to t.
* fixed Makefile to say *.el instead of . so compilation will
  occur even if there are no .elc files.

VM 5.32 released (2 March 1992)

* changed `|' not to send the message separator strings to the command.
* fixed bug in vm-parse-addresses; no longer considers an empty
  string or a string composed only of whitespace to be an address.
* fixed bug in vm-compatible-folder-p; kill-buffer may make Emacs go
  to an random buffer.
* reorganized the sources, moved everything out of vm.el so vm.el
  can be used as a temp file.  VM compiles to one object file now.
* Prefix arg to `c' (vm-continue-composing-message) now allows
  selection of unmodified Mail mode buffers.
* Fixed the problem with the startup message appearing every time
  you invoked VM instead of just the first time.
* Fixed problem with first message displayed at startup not
  having its headers highlighted properly.
* axed the Full-Name header.
* New variable: vm-mail-header-from
* removed addresses from Cc that are already in To in replies.
* window configurations
  - commands
    vm-apply-window-configuration
    vm-save-window-configuration
    vm-delete-window-configuration
    vm-window-help
  - variables
    vm-window-configuration-file
* used $(EMACS) instead of emacs in the Makefile.
* fixed bug in vm-save-message, needed to restuff deleted messages
  to suppress the delete flag.
* New command: vm-mark-help
* moved the license into the texinfo document, and made the
  license display code use the Info subsystem.
* The Info document goes into the file `vm' now; the README and
  Makefile were changed to reflect this.
* vm-visit-folder depended on insert-default-directory being
  non-nil in order to find folders in the folder directory.  vm
  now temp bind default-directory to folder-directory to make
  sure that relative paths resolve in that directory.
* VM now handles the in-reply-to argument to vm-mail-internal (oops).
* Reply-To instead of Reply-to in outbound mail, a concession to
  broken mailers.
* Fixed vm-grok functions to give up only in the case of MMDF folders.
  A nil value of vm-folder-type could confuse it otherwise.  This
  is an interim fix.

VM 5.31 released (31 March 1991)

* kill-buffer in vm-parse-address may cause a change to a random
  buffer; added save-excursion.
* moved vm-parse-addresses to vm.el, since it's used in the
  summary and in replies.
* fixed problem with retaining correct message order across
  multiple saves and expunges.
* no longer generate an empty In-Reply-To if mailer didn't
  provide message-ID.

VM 5.30 released (26 March 1991)

* vm-resend-message now inserts a Resent-To header.
* changed default value of vm-visible-headers to show Resent-From
  and Resent-Date.
* fixed bug in vm-thoughtfully-select-message, return value was
  sometimes incorrect.
* fixed bug in vm-save-message, summary and message renumbering
  were being deferred too long in the destination folder when
  saving between visited folders.  fix similar deferral bug in
  vm-burst-digest.
* rfc822-addresses is no longer needed to support
  vm-reply-ignored-addresses.  This should keep addresses
  from being stripped of comments inappropriately.
* VM now reorders before grabbing the bookmark, as it should.
* vm-mail-internal now subsumes the function of mail-setup so as to
  avoid some of the choices made in mail-setup.
* removed the conditionals from around calls to vm-mail-internal
  since it cannot fail; vm-mail-internal no longer returns the
  token value of t.
* centralized the code that removes duplicates from lists of
  addresses, message-ids, etc, and fixed a bug in it.
* used duplicate removal code on address lists
* in replies, if To is empty and Cc isn't then To = Cc, Cc = nil
* used vm-parse-addresses in vm-su-do-recipients, which should do
  better than the simple address parser used there before.
* vm-mail-internal now automatically adds a Full-Name header.
* vm-flush-interval == t now means flush after every change
* vm-save-message now check whether the per message modflag is set
  before stuffing the message attributes.
* (setq file-precious-flag t) is no longer done by vm-mode-internal.
* vm-reply puts together an appropriate Newsgroups header.

VM 5.29 released (18 March 1991)

* fixed References being inserted after mail-header-separator
* made a couple of VM find-file-hooks not assume that because
  they've been installed vm-message-list has been initialized.
* removed last of \\[...] usage; might as well be consistent
  since these things waste more time than they save.

VM 5.28 released (16 March 1991)

* fixed buffer renaming error; check for name collisions
* vm-goto-message now tries to follow the summary cursor first;
  if it does, then it doesn't try to move again.
* fixed another bookmark problem; problem really inside
  vm-expunge-folder, some variables needed to be set even if
  quitting.
* removed the expand-file-name loop from vm-save-message, since
  it would loop endlessly if vm-folder-directory was a relative
  path name.
* fixed code in vm-save-message that assumed some VM specific
  local variables would have sane values in a non VM mode buffer.
* VM maintains the References header in replies.

VM 5.27 released (14 March 1991)

* fixed bug in vm-stuff-message-order; needed (cdr vm-message-list)
  instead of (cdr vm-message-pointer).
* centralized code that VM executes once per Emacs session.
* eliminated the need for immediately loading other libraries
  during the load of the main VM Lisp file, which should fix a
  bug in the Makefile.
* cleaned up the vm function a bit, the code that tries to make
  make sure that the totals blurb in left at the bottom of the
  screen after startup is less grungy now.
* fuzzier grouping, spaces at end of the subject and after re:
  are ignored.
* killing a killed buffer breaks older versions Andy Norman's
  homebrewed kill-buffer function in gnuserv.el.  VM no longer
  stimulates the bug.
* fixed a couple of summary pointer update bugs in the VM
  isearch code.
* better bindings for the mark commands.
* vm-forward-message just calls vm-send-digest when user tries to
  use it with marks, instead of just chiding the user.
* VM feeps even less on motion errors to avoid disturbing
  sensitive souls and sleeping spouses.
* various documentation corrections
* fixed bug bookmark bug; bookmark was being stuffed too soon,
  i.e. before messages were renumbered properly
* when mail is sent the outbound mail buffer is renamed to "sent
  ..." to indicate that the mail has been sent.
* New command: vm-resend-message
* New command: vm-continue-composing-message
* `|' uses marks now

VM 5.26 released (6 March 1991)

* vm-move-message-forward now sets the proper variables to get
  the message order saved.
* fixed bug in vm-stuff-message-order; message numbers needed to
  be redone sometimes before saving.
* fixed bug in vm-revert-to-physical-order, it was not recording
  the message order change properly either.
* prefix arguments to vm and vm-visit-folder now cause VM to
  visit the folder read-only.
* altered conditional in vm that decides whether to get new mail;
* indiscriminately scrubbing slashes from reply buffer auto save
  file names proved to be a humorous mistake.  I've decided that
  post-modification of the auto save file name is a bad thing, so
  VM doesn't do any of the scrubbing anymore.  I leave it up to
  make-auto-save-file-name to do the right thing, since it's its
  job anyway.
* documentation fixes in vm-reply.el
* 'g' now switches to the primary inbox if you weren't there
  already and there is new mail.

VM 5.25 released (3 March 1991)

* got rid of vm-local-message-list and vm-local-message-pointer

VM 5.24 released (2 March 1991)

* New variable: vm-retain-message-order
* New command: vm-move-message-forward
* New command: vm-move-message-backward
* VM finally gets doubly links message lists.  vm-previous-message
  should be much faster on large folders now.
* removed some unnecessary code at the end of the routine that
  reverts the message-list back to physical-ordering.
* added missing function vm-delete-directories to vm-virtual.el
* added `/' to the list of characters that get scrubbed out of
  the auto-save-file-name's of reply buffers.
* added > description to the doc string of vm-mode.
* move-after-deleting and move-after-undeleting now signal error
  only if non-interactive and not executing a keyboard macro.
* New variable: vm-edit-message-mode-map
* C-c C-c now works like C-c ESC when editing a message.
* substitute-command-keys now used in vm-edit-message since it
  should be relatively cheap.
* doc string correction in vm-delete-message.

VM 5.23 released

* fixed display bug with virtual folders; virtual folder would
  switch real buffers when changing messages but the display
  wouldn't display the buffer containing the new current message.
* changed the vm-group-by algorithm; now uses buckets, should be
  much faster.
* append a newline if necessary after inserting an edit buffer into the
  folder, to keep the message separator from becoming a part of
  the message.
* Made the "No new mail" message go away after a while.
* fixed bug where VM assumed buffer-file-name would always be
  non-nil.
* fixed bug in vm-gobble-deleted-messages that caused
  VM via vm-expunge-folder to bomb on empty folders.
* fixed another bug in vm-gobble-deleted-messages that caused
  it to mark a folder modified if an expunge was attempted on an
  empty folder.
* further centralized summary updates and renumbering activities
* couldn't remember why require-final-newline was set to nil in
  vm-mode and vm-virtual-mode buffers so I got rid of it.
* "No new messages" -> "No messages gathered" in vm-get-new-mail.
* made `g' go ahead and get new mail even if the current folder
  isn't the primary inbox.

VM 5.22 released

* fixed obscure bug in vm-write-file-hook that might have bitten
  someone some day; vm-message-list vs. vm-local-message-list.
* updated startup message and README to say where to send bug reports.
* added support for timer based checkpointing.
* New variable: vm-flush-interval
* VM now gets along with revert-buffer and recover-file.
* VM undo will now delete the auto-save-file when appropriate.
* Folder saves with C-x C-s and C-x C-w don't get the -??-
  uncertainty indicators anymore.  C-x s still does though, alas.
* vm-set-buffer-modified-p changed to make the setting of the
  buffer's modification flag be tried first, so that file locking
  and file supersession threat aborts are handled cleanly.
* added code (that really works) to clear the question from the
  minibuffer after vm-quit gets its answer.
* tiny cleanup in mail buffer name used by vm-send-digest

VM 5.21 released

* the auto-save file name scrubber was broken.  I also discovered
  that Emacs` aset function is broken.
* vm-keep-sent-messages didn't quite work right; used rassq instead
  of memq...

VM 5.20 released

* fixed doc string for vm-scroll-forward and vm-scroll-backward
* removed whitespace from auto-save-file-names in VM Mail Mode
  buffers.  trimmed shell metacharacters as well.
* fixed doc error for vm-resend-bounced-message (bound to M-r not C-r)
* the default value of vm-confirm-quit is now 0.
* corrected documentation on vm-confirm-quit.
* variable initialization now in vm-vars.el
* VM scroll commands, page narrowing functions and other
  functions that schlep about in the current message moved to
  vm-page.el.
* New variable: vm-keep-sent-messages
* VM now reports the "right" number of new and unread messages at
  startup, even if previewing is disabled.
* added code to clear the question from the minibuffer after
  vm-quit gets its answer.

VM 5.19 released

* fixed bug in vm-gobble-deleted-messages that causes the summary
  to be botched if the first message was expunged and the second
  message wasn't.
* call to vm-set-buffer-modified-p made clearer.
* fixed bug in vm-expunge-folder and vm-update-summary-and-mode-line
  that caused a botched summary if all the messages
  in a folder were expunged.
* moved the vm-version variable initialization into
  another separate file.
* vm-save-folder is now more verbose when it does it's work.
* vm-beginning-of-message and vm-end-of-message now push point
  onto the mark ring just like their beginning-of-buffer/end-of-buffer
  counterparts.
* removed incorrect vm-system-state change in vm-beginning-of-message
* vm-save-folder now handles prefix args like save-buffer does.
* vm-mail now works if called before the rest of VM is loaded.

VM 5.18 released

* VM now ignores garbage (e.g. blank lines) at the beginning of a folder.
* C-x C-s and C-x C-w will now save the folder if invoked from
  the summary buffer.

VM 5.17 released

* fixed bug in vm-build-=virtual-message-list that kept other
  virtual folder selectors from working.]
* fixed bug in vm-get-new-mail when gathering messages from
  another folder instead of the spool.
* added autoload for vm-visit-virtual-folder to vm.el
* fixed bug in parsing of MAILPATH environmental variable.
* fixed bug in vm-expose-hidden-headers; if message is unread
  body is not inadvertently displayed.

VM 5.16 released

* message structs are no longer directly self-referential.  A
  symbol must now be dereferenced.  This was done to allow the
  debugger to be used on VM.
* vm-get-spooled-mail no longer assumes that there's always mail
  in an existing spool file.

VM 5.15 released to the beta-testers

* slight cleanup in vm-assimilate-new-messages
* added some calls to vm-select-folder-buffer to some commands
  that needed it.  Basically this means commands that call
  another command to do most of their work but do not call this
  second command interactively, which result in
  vm-set-folder-variables not always being called when it's
  needed.

VM 5.14 released

* New variable: `vm-delete-after-archiving'
* New variable: `vm-delete-after-bursting'
* VM now avoids the use of the default *mail* buffer.  Outgoing
  mail buffers are given more descriptive names, and more than
  one can exist concurrently.

VM 5.13 released

* vm-kill-subject bug fixed; report of number of killed message
  was broken.
* changed vm-message-list to vm-local-message-list in vm-do-summary

VM 5.12 released

* last couple of changes to the grouping code didn't make it into the
  previous patch.

VM 5.11 released

* added a check for a killed summary buffer to vm-group-message.
* references to vm-local- variables still weren't right; there
  are now no references at all to their global counterparts.

VM 5.10 released

* grouping code wasn't setting vm-local- vars... this didn't
  generate an error when I tested it with a virtual folder, but
  better safe than...
* summary code now tries not to do a total rebuild after getting
  new mail or expunging.  This should give a considerable time
  savings on large folders.
* another type of bounced message delimiter added to the searches
  in vm-resend-bounced-message.

VM 5.09 released

* New variable: `vm-folder-read-only'
* removed all the "clever" code at the end of vm-quit that tried
  to do nice thing if we landed on a VM buffer.
* vm-kill-subject now reports the number of messages that have
  been deleted.
* fixed bug in implementation of vm-reply-subject-prefix; test
  condition was reversed, and the string-match for the prefix was
  not anchored at the beginning of the header contents as it
  should have been.
* fixed problem where expunging immediately after C-x C-s would not show
  folder as being modified, even if some messages were expunged.
* virtual folders
  - New variables:
    + vm-virtual-folder-alist
    + vm-virtual-mirror
  - New commands:
    + vm-visit-virtual-folder
* vm-proportion-windows now handles vertical windows appropriately.
* vm-expose-hidden-headers now automatically jumps to top of message.
* VM no longer stuffs headers into expunged messages before saving the
  folder (oops).
* fixed bug in handling of negative prefix arguments (broken everywhere).
* fixed bug in the message save functions, last-command was being
  clobbered on interactive calls, which made the commands inapplicable
  to marked messages.
* fixed bug in vm-delete-message-backward; vm-follow-summary-cursor was
  not being called.
* vm-resend-bounced-message moved from C-r to M-r.
* support for Grapevine added to vm-resend-bounced-message.

VM 5.08 released

* commands that send mail now inherit the default-directory of the
  folder buffer.
* 86ed last paragraph of vm-burst-digest docstring left by an
  overzealous documentation Muse.
* better error handling when getting months and month numbers.
  bogus Date: header shouldn't make VM explode now.
* the code that supported vm-reply-ignored-addresses had a typo:
  "to" where "cc" should have been--- fixed.
* fixed problem with *mail* buffer not being displayed after C-r
  (vm-resend-bounced-message).  I believe this is in fact a bug in
  save-excursion.
* New variable: vm-auto-folder-case-fold-search
* Updated regexp that groks RFC 822 dates to reflect new policy as of
  RFC 1123, i.e. four digit year numbers.
* vm-mail need not be invoked from within VM now.

VM 5.07 released

* purged the overlay-arrow filth, enough is enough.
* changed incorrect reference to m to (car mp) in vm-write-file-hook.
* removed incorrect call to backup-buffer in vm-gobble-crash-box
* fixed full name parsing botch that left trailing quote on doublequoted names.
* more virtual folders code added

VM 5.06 released

* vm-save-restriction modified to hide its uninterned vars in a (let ...)
  because the byte-compiler interns them. :-(
* fixed problem with vm-resend-bounced-message; mail-header-separator
  was not being inserted into the message.
* fixed another problem with vm-resend-bounced-message; code needed to
  be inside the save-restriction call instead of outside it.
* some early virtual folder stubs added.

VM 5.05 released

* Changed vm-thoughtfully-select-message to rely on vm-system-state to
  determine whether to jump to a new message or not.  Made mods to other
  VM function to insure the vm-system-state always has the right value.
* New variable: vm-digest-preamble-format
* New variable: vm-digest-center-preamble
* cleanups in the header stuffing routines
* added a modify flag to each message struct; should save time when
  saving by restuffing only those messages that need it.

VM 5.04 released

* fixed problem with the summary arrow drifting out of view in the summary
  window.
* fixed problem with visible/invisible variables startup consistency
  checking.
* disabled file locking in places where it is inappropriate; this should
  make startup a bit faster.
* made vm-show-current-message do something sensible if a page-delimiter
  is at the beginning of the text portion of the message, and
  vm-honor-page-delimiters is non-nil.
* made vm-honor-page-delimiters override the value of vm-preview-lines
  if honoring vm-preview-lines would require displaying past a page
  boundary.
* fixed problem where VM wasn't detecting end of message when honoring
  page delimiters.
* fixed problem with editing and already edited message not setting the
  buffer modification flag; also fixed similar problem with unsetting the
  edited flag.
* added a page break indicator via overlay-arrow.  The overlay-arrow
  vars are buffer local, so there shouldn't be any squabbles over their
  use.

VM 5.03 released

* fixed problem with point and the summary arrow not coinciding at startup.
* MAILPATH again; bash doesn't use `%' as sh does, it uses `?'.
* Changed Makefile.  `make' alone no longer rebuilds the texinfo stuff;
  `make all' does that now.
* Fixed Makefile; vm.info wasn't being saved after formatting (oops).

VM 5.02 released

* Changed defconst to defvar in the definition of vm-summary-format;
  this is a leftover from debugging.
* Makefile wasn't loading ./vm.elc before forcing compilation of all
  modules.  Depending on the circumstances an old vm.elc could be loaded
  with predictably bad results.
* Added -q to Emacs invocations in Makefile to avoid grot in .emacs files.
* New command: vm-delete-message-backward (C-d), a concession to
  RMAILoids.  Maybe now they'll get off my BACK about this. :-)
* doc corrections and additions
* modified vm-su-do-author to handle double quoted full names better.

VM 5.01 released

* fixed MAILPATH parsing; forgot about "%message" stuff that could be
  tacked onto the end of the filenames.
* added check to the mail gathering routines to make sure the folder types
  of the source and destination folders are compatible.
* fixed bug involving vm-totals in vm-assimilate-new-messages.
* doc corrections

VM 5.00 released for alpha testing

* `t' now toggles exposing/hiding normally invisible headers.
* VM now writes much more cached info into its data header resulting in
  much faster startup.
* New variable `vm-invisible-header-regexp'.
* Cached a regular expression that shows how to find the beginning of the
  reordered headers (assuming the user permits such cached data to be
  used, then VM won't reorder message headers every time a folder is
  visited.
* Status and X-VM-... headers are now updated in place instead of always
  putting them at the top of the message.
* vm-delete-header unused, went away.
* Doesn't feep on "No next unread message."
* `written' and `forwarded' attributes added.
* macroized (if vm-mail-buffer (set-buffer vm-mail-buffer)) into
  (vm-select-folder-buffer)
* modularized the header highlighting and folder buffer display functions.
* fixed < and > to behave properly when invoked from the summary buffer.
* vm-last-save-folder now gets the fully expanded version of the folder name.
* vm-visit-folder now defaults to vm-last-save-folder if it is non-nil,
  and the user hits RET at the interactive prompt.
* old vm-mode now vm-mode-internal; new vm-mode now interactively callable.
* vm-get-new-mail now takes a prefix argument to mean gather mail from a
  user specified folder instead of from the usual spool files.
* vm-auto-archive-messages now ask user confirmation before saving each
  message if given a prefix arg.
* Fixed botched interpretation of Berkeley Status headers.
* VM now loads ~/.vm the first time it is executed in an Emacs session.
* New variable `vm-move-after-undeleting'.
* Added a trailing slash to the if-all-else-fails setting of
  vm-spool-directory.
* Fixed problem where the totals blurb would not be redisplayed after
  the copyright info if vm-startup-with-summary is t.
* `vm' now only does (switch-to-buffer mail-buffer) if it was not
  invoked via vm-mode.
* vm-howl-if-eom-visible has forsaken pos-visible-in-window-p in favor
  of just doing a scroll-up and howling if an error occurs.  This
  obviates the need for vm-show-current-message to do a sit-for before
  calling vm-howl-...
* Implemented the standard VM included text code as a call to
  vm-yank-message and a default yank function.  This default yank
  function is not called if the user already has a mail-yank-hook in place.
* If the FOLDER-NAME part of auto-folder-alist evaluates to a list,
  then it is considered to be another auto-folder-alist and is scanned
  like vm-auto-folder-alist.
* New variable `vm-auto-next-message'.
* New variable `vm-auto-center-summary'.
* VM can now survive the death of its summary buffer.
* VM no longer uses overlay-arrow; the summary arrow is now written into
  the summary buffer directly.
* %t and %T now supported to show recipient addresses and full names in
  the summary.
* vm-gargle-uucp extended to cover %t addresses.
* New variable `vm-honor-page-delimiters'.
* New variable `vm-reply-subject-prefix'.
* vm-quit now squawks if invoked from a non-VM buffer.  It used to just
  kill whatever buffer it was invoked from.
* vm-folder-type now automated; is no longer a user variable.
* message marks
* the end of message notification has been removed.
* group by recipient
* New variable: vm-reply-ignored-addresses
* `U' now marks messages unread.
* skip variables value = t now means skip inappropriate messages
  dogmatically, no exceptions.  Non-nil and non-t value now gives old
  behavior.
* attributes are now stuffed before saving a message to a folder.
* bookmarks
* vm-yank-message-other-folder
* support for MAIL and MAILPATH environmental variables
* after getting new mail jump to the first unread message only if the
  last command executed was not a message scan command, e.g.
  vm-scroll-forward, vm-isearch-forward.
* summary mode-line-format format now mirrors that of the folder buffer
* vm-buffer-modified-p returns, folder buffer is now read-only.
* 'L' now loads ~/.vm
* vm-mode is quieter and less obtrusive now, vm now works with crypt.el
  and with vm-mode present in auto-mode-alist.
* you can now save a message in a folder to that same folder, in effect
  duplicating it.
* `M' format spec now gives numeric month.
* message editing
* `j' discards cache data
* C-r (vm-resend-bounced-message).
* New variable: vm-confirm-quit
* New behavior for vm-visit-when-saving if it is non-nil and non-t.
* `A' no longer archives messages marked for deletion.
* prefix arg to vm-burst-digest now makes it copes with non-standard
  digests, at least to a certain extent.
* New format spec %A gives longer attribute summary; less column overloading.
? vm-read-mh-folder
