Restore nnimap-split-download-body as a customization option

* lisp/gnus/nnimap.el (nnimap-split-download-body): And add an
obsolete alias for `nnimap-split-download-body-default'.
(nnimap-fetch-inbox): Check the value of the option, not the variable.
* doc/misc/gnus.texi (Client-Side IMAP Splitting): Move the primary
documentation of this option to this section.
This commit is contained in:
Eric Abrahamsen 2020-12-02 15:52:25 -08:00
parent 6ecec60966
commit cff2f895c2
2 changed files with 20 additions and 11 deletions

View file

@ -14521,6 +14521,14 @@ The default is @samp{(%Deleted %Seen)}.
@end table
@vindex nnimap-split-download-body
By default, the nnimap back end only retrieves the message headers;
the option @code{nnimap-split-download-body} (which is a regular
customization option, not a server variable) tells it to retrieve the
message bodies as well. We don't set this by default because it will
slow @acronym{IMAP} down, and that is not an appropriate decision to
make on behalf of the user.
Here's a complete example @code{nnimap} backend with a client-side
``fancy'' splitting method:
@ -24622,13 +24630,7 @@ the value @samp{spam} means @samp{nnimap+your-server:spam}. The value
Note for IMAP users: if you use the @code{spam-check-bogofilter},
@code{spam-check-ifile}, and @code{spam-check-stat} spam back ends,
you should also set the variable @code{nnimap-split-download-body} to
@code{t}. These spam back ends are most useful when they can ``scan''
the full message body. By default, the nnimap back end only retrieves
the message headers; @code{nnimap-split-download-body} tells it to
retrieve the message bodies as well. We don't set this by default
because it will slow @acronym{IMAP} down, and that is not an
appropriate decision to make on behalf of the user. @xref{Client-Side
IMAP Splitting}.
@code{t}. @xref{Client-Side IMAP Splitting}.
You have to specify one or more spam back ends for @code{spam-split}
to use, by setting the @code{spam-use-*} variables. @xref{Spam Back

View file

@ -146,13 +146,20 @@ textual parts.")
:version "24.4"
:group 'nnimap)
(defcustom nnimap-split-download-body nil
"If non-nil, make message bodies available for consideration during splitting.
This requires downloading the full message from the IMAP server
during splitting, which may be slow."
:type 'boolean)
(define-obsolete-variable-alias
'nnimap-split-download-body-default 'nnimap-split-download-body
"28.1")
(defvar nnimap-process nil)
(defvar nnimap-status-string "")
(defvar nnimap-split-download-body-default nil
"Internal variable with default value for `nnimap-split-download-body'.")
(defvar nnimap-keepalive-timer nil)
(defvar nnimap-process-buffers nil)
@ -2100,7 +2107,7 @@ Return the server's response to the SELECT or EXAMINE command."
"BODY.PEEK"
"RFC822.PEEK"))
(cond
(nnimap-split-download-body-default
(nnimap-split-download-body
"[]")
((nnimap-ver4-p)
"[HEADER]")