* in the defconst of vm-menu-mime-dispose-menu, check whether a
non-string s-expression is allowed as a menu element name
before trying to use one. Versions of XEmacs prior to 21.4
don't allow expressions as item names.
* New variables:
+ vm-folder-file-precious-flag
* added CRAM-MD5 as an authentication method for IMAP.
* vm-su-do-date: interpret 2-digit years in the RFC-822 matching
case as 20XX if year starts with 0-6.
* vm-rfc1153-or-rfc934-burst-message: skip spaces in addition to
newlines that occur after a separator line. A digest has been
observed with that kind of deformity.
* treat enable-local-eval as we do enable-local-variables--- always
bind it to nil.
* vm: don't bind vm-auto-decode-mime-messages non-nil during
initial message preview if it is nil.
* vm-mime-display-internal-text/html: dropped (sleep-for 2). No one cares
enough about the "Need W3 to inline HTML" message to wait 2
seconds afterward.
* added menu entry to allow MIME objects to be converted to
another type and displayed. The new type is determined by
vm-mime-type-converter-alist.
* added koi8-r to vm-mime-mule-charset-to-coding-alist (XEmacs only).
* vm-pop-read-list-response: check for nil return of
vm-pop-read-response before using return value.
* vm-pop-read-stat-response: check for nil return of
vm-pop-read-response before using return value.
* vm-encode-coding-region: use unwind-protect to make sure (well
more likely) that the work buffer always gets killed if it has
been created.
* vm-decode-coding-region: use unwind-protect to make sure (well
more likely) that the work buffer always gets killed if it has
been created.
* vm-mime-convert-undisplayable-layout: put object buffer on
garbage list sooner to make rarer the situation where the
buffer never gets deleted.
* Makefile: remove function definition of vm-its-such-a-cruel-world
after it is run.
* vm-md5-region: if vm-pop-md5-program exits non-zero, signal an
error. Also if the work buffer is not at least 32 bytes long,
signal an error. This prevents naive callers from assumption all is well
and using a possibly empty string as an MD5 hash.
* vm-md5-region: check the MD5 digest returned for non-hex-digit
characters and signal an error if any are found.
* vm-get-file-buffer: use find-buffer-visiting if it is fbound.
* vm-build-threads: fixed loop that removed child messages from a
parent when better information about a child's parent is found.
Previously the loop attempted to remove the same message from
the parent over and over.
* vm-build-threads: gather thread data using References and
In-Reply-To for all messages before using the Subject header.
This helps prevent the case where References says A is the
parent of B but because of clock skew B is older than A, which
can lead to B being considered the parent of A if A and B have
the same subject and vm-thread-using-subject is non-nil.
VM 6.92 released (11 March 2001)
* vm-imap-check-mail: throw to 'end-of-session instead of 'done.
Fixes problem of vm-spooled-mail-waiting not being set.
* vm-su-do-recipients: If there is no To or Apparently-To header,
use Newsgroups if available.
* vm-mime-display-external-generic: use a unibyte temp buffer for
base64 decoding if using FSF Emacs MULE. Otherwise our old
friend \201 crashes the party.
* vm-mime-find-leaf-content-id-in-layout-folder: add missing
layout argument to vm-mime-find-leaf-content-id.
* vm-mime-parse-entity: fixed regexps that match an empty content
description so that they match descriptions that only contain
spaces.
* vm-su-do-date: make +/- mandatory in the numeric tiemzone spec.
First digit of numeric timezone spec must be 0 or 1.
* vm-fill-paragraphs-containing-long-lines: ignore errors generated
by fill-paragraph.
* moved the code that catches the font-lock search bound error
from the XEmacs MIME composition encoder to the FSF Emacs
encoder.
* vm-mime-charset-internally-displayable-p: allow variable
vm-mime-default-face-charsets to apply to MULE-enabled Emacs
and XEmacs.
VM 6.91 released (1 March 2001)
* vm-mime-can-display-internal: check charset to verify that we
can display it when checking text/html.
* vm-auto-archive-messages: hide value of last-command when calling
vm-save-message.
* vm-mime-find-leaf-content-id: removed second arg in call to
vm-mm-layout-id since it only accepts one argument.
* vm-mime-transfer-encode-region: \\n -> \n in armor-dot check
regexp string.
* vm-mime-parse-entity-safe: dropped (sleep-for 2). No one cares
about syntax errors.
* vm-mime-base64-encode-region: if call to base64-encode-region
fails with wrong-number-of-arguments error call it with only
two args and do the B encoding cleanup separately.
* vm-mime-base64-decode-region: don't use the FSF Emacs base64
decoding function, since it fails completely if it encounters
characters outside of the BASE64 alphabet.
* vm-mime-attachment-auto-type-alist: added the usual PDF,
Quicktime and Excel file extensions.
* vm-imap-move-mail: trying using obsolete RFC822.PEEK if
BODY.PEEK fails.
* vm-imap-retrieve-to-crashbox: support use of obsolete RFC822.PEEK.
* vm-so-sortable-datestring: use vm-timezone-make-date-sortable
instead of the bare timezone-make-date-sortable, which is less
capable of parsing badly formed Date headers.
* vm-mime-convert-undisplayable-layout: save the content type
parameters from the old type and give them to the new type.
* all your base are belong to us
USE_XEMACS=YES in /etc/mk.conf.
The changes from the last packaged version are (sorry for not
summarizing this):
VM 6.90 released (9 January 2001)
* vm-compose-mail: Use apply instead of funcall to call the yank
action. We aren't passing a list of arguments to the function.
* vm-mark-or-unmark-messages-same-author: compare author
addresses case insensitively.
* vm-emit-eom-blurb: ignore case when matching against
vm-summary-uninteresting-senders to match what
vm-su-interesting-from does.
* vm-mime-display-internal-text/html: use 'message' to display
any errors encountered.
* vm-mime-display-internal-text/enriched: use 'message' to display
any errors encountered.
* vm-yank-message: call vm-decode-mime-encoded-words in the correct buffer.
* default value of vm-auto-center-summary changed from nil to 0.
VM 6.89 released (22 December 2000)
* vm-yank-message: MIME decode the headers of the yanked message
if vm-display-using-mime is non-nil.
* vm-forward-message: if MIME forwarding, switch the buffer
containing the attached message to be multibyte to avoid the
appearance of our old friend \201 when the buffer contents are
inserted into the composition buffer. (FSF Emacs 20 only).
* vm-do-folders-summary: count messages in folders that lack
entries in the folders summary database using vm-grep-program.
* vm-do-folders-summary: ignore index files in the folder directories.
* vm-update-folders-summary-highlight: use intern-soft instead of
intern, since the symbol may not be present in the obarray.
* vm-mark-for-folders-summary-update: check for killed summary
before selecting folders summary buffer.
* vm-emit-eom-blurb: bind vm-summary-uninteresting-senders-arrow
to "" around call to vm-summary-sprintf.
* Makefile: Start using $(prefix) to be more GNUish. Try to
create the installation directories if they don't exist.
* vm-modify-folder-totals: wrong cells in the list were being
updated; fixed.
* vm-mime-run-display-function-at-point: return result of calling
the display function because callers expect it. This wasn't
happening in the FSF Emacs part of the conditional.
VM 6.88 released (11 December 2000)
* New variables:
+ vm-folders-summary-mode-hook
+ vm-grep-program
+ vm-mmosaic-program
+ vm-mmosaic-program-switches
* vm-determine-proper-charset: don't use MULE rules if operating
in a unibyte buffer. The non-MULE rules work better in that
case. Dropped use of vm-with-multibyte-buffer.
* use BODY.PEEK instead of RFC822.PEEK in IMAP message fetches,
since RFC822.PEEK has been made obsolete in RFC 2060.
* not decoding for preview if vm-preview-lines == 0 was a
mistake, as the header might still need decoding, so this
change was reversed.
* allow 8-bit chars in IMAP atoms. Microsoft Exchange emits them,
resistance is futile.
* keep IMAP trace buffer if a protocol error occurs. Code for
this was partially done, it's finished now.
* improved folders summary, new folders summary format specifier %s.
* vm-move-to-xxxx-button: fixed code assumption that buttons were
contiguous.
* qp-encode.c: get rid of non-constant initializers (nextc =
getchar()) to avoid warnings from Sun's compiler.
* vm-toolbar-fsfemacs-install-toolbar: "mime" now works in
vm-use-toolbar under FSF Emacs.
* don't display verbose "Waiting for POP QUIT" message unless
getting mail interactively.
* make vm-thread-loop-obarray a larger hash table.
* use vm-global-block-new-mail to prevent async reentrance into the POP
and IMAP code. Use vm-block-new-mail to prevent command-level
mail retrieval buffer locally.
* vm-check-mail-itimer-function: always check for mail. Now that
we're updating the folders summary we need to do the check even
if we know there is new mail from a previous check, so that the
summary is kept up to date.
* removed Mule menu from VM's commandeered menubar (FSF Emacs 20 only).
* C-c C-p in composition buffer binding changed from
vm-mime-preview-composition to vm-preview-composition.
* vm-sort-messages: fixed paren problem that broke non-thread
sorting while threading was enabled.
* vm-assimilate-new-messages: don't run vm-arrived-message-hook
and vm-arrived-messages-hook if being called for the first time
in this folder. Old check for this didn't work properly, so
now first-time status is passed in as a parameter.
* vm-emit-eom-blurb: use vm-summary-sprintf on full name so that
it is MIME decoded if necessary.
* vm-check-for-spooled-mail: don't skip remaining spool files
once we know there is mail waiting. We still need to retrieve
data for the remaining folders for the folders summary.