[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nnimap-split-download-body removed?

From: Bodertz
Subject: Re: nnimap-split-download-body removed?
Date: Mon, 30 Nov 2020 17:15:03 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.91 (gnu/linux)

I can confirm that setting `nnimap-split-download-body-default' to t
works as intended.  I really should have tried that first.

It sounds like the removal wasn't intentional, so hopefully it can be
added back.

It seems to download the body before the splitting, which is
unfortunate.  It would be better if it only downloaded the body when the
split required it.  Or if it could match the sender against a whitelist
of accepted senders and only download when they matched.  Or the same
thing but with the summary, but then it's getting close to just adding
a simpler split system before the real one, which is a little odd.

So I don't forget, someone also suggested `nnimap-split-download-body
size', which might be a useful addition:

--- Begin Message --- Subject: Re: nnimap-split-download-body feature request Date: Thu, 20 Nov 2003 09:20:09 -0500 User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (usg-unix-v)
On Thu, 20 Nov 2003, wrote:

> Ted Zlatanov <> writes:

>> Nah, just fetch the headers.  I think that's all you can reasonably
>> expect as a Gnus user.  Maybe fake the body with "BODY TOO LARGE"
>> or something like that, or add a header, but I personally think
>> that retrieving just the headers in such a case is a perfectly good
>> solution.
> The asynchronous prefetch, agent, cache (and possibly more things)
> would cache this incomplete article.  How would they know the
> message was incomplete?  After requesting a re-fetch of the entire
> article, all those cached copies will need to be purged.  Sounds
> like work.

I'm not sure I understand.  Here's a patch to show you what I think
could be done, since nnimap-split-articles already decides between
the head and the whole body.  The nnimap-check-body-size function
needs to be provided, but I hope you see what I mean.


--- nnimap.el   4 Sep 2003 22:22:18 -0000       6.71
+++ nnimap.el   20 Nov 2003 14:20:24 -0000
@@ -1271,9 +1271,10 @@
          (when (setq rule (nnimap-split-find-rule server inbox))
            ;; iterate over articles
            (dolist (article (imap-search nnimap-split-predicate))
-             (when (if (if (eq nnimap-split-download-body 'default)
-                           nnimap-split-download-body-default
-                         nnimap-split-download-body)
+             (when (if (and (nnimap-check-body-size article)
+                            (if (eq nnimap-split-download-body 'default)
+                                nnimap-split-download-body-default
+                              nnimap-split-download-body))
                        (and (nnimap-request-article article)
                             (with-current-buffer nntp-server-buffer 
                      (nnimap-request-head article))

--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]