]> git.eshelyaron.com Git - emacs.git/commit
Allow gnus-retrieve-headers to return headers directly
authorEric Abrahamsen <eric@ericabrahamsen.net>
Wed, 18 Mar 2020 03:53:05 +0000 (20:53 -0700)
committerEric Abrahamsen <eric@ericabrahamsen.net>
Mon, 18 Jan 2021 21:05:36 +0000 (13:05 -0800)
commit20add1cd22f9775a4475148b300cf2a4de4bd54a
treeeae5c0109d2012605d64d73cdfbf2b8d2edb7f3f
parent8f4b3b812aab62a5a205bc2f8690c3b4c460ba09
Allow gnus-retrieve-headers to return headers directly

Previously, all Gnus backends returned header information by writing
nov lines into the nntp-server-buffer, which was later parsed.  This
commit allows the backends to return their header information as a
list of already-parsed headers, though so far none of the backends
actually do that.  The agent, cache, cloud etc. now operate on parsed
headers rather than nov text, ie. they use gnus-fetch-headers instead
of gnus-retrieve-headers.

* lisp/gnus/gnus-sum.el (gnus-fetch-headers): Handle the case in which
gnus-retrieve-headers returns headers directly.
* lisp/gnus/nnvirtual.el (nnvirtual-retrieve-headers): Use
gnus-fetch-headers rather than gnus-retrieve-headers to get headers,
meaning we're operating on already-parsed headers.
(nnvirtual-convert-headers): Remove now-unnecessary function.
(nnvirtual-update-xref-header): Rewrite to operate on parsed header.
* lisp/gnus/gnus-cloud.el (gnus-cloud-available-chunks): Use
gnus-fetch-headers instead of gnus-retrieve-headers.
* lisp/gnus/gnus-cache.el (gnus-cache-retrieve-headers): Use
gnus-fetch-headers.
(gnus-cache-braid-nov, gnus-cache-braid-heads): Delete unnecessary
functions -- we now do this work on a list of parsed headers.
* lisp/gnus/gnus-agent.el (gnus-agent-retrieve-headers): Use
gnus-fetch-headers.
(gnus-agent-braid-nov): Remove unnecessary function.
(gnus-agent-fetch-headers): Use gnus-fetch-headers.
lisp/gnus/gnus-agent.el
lisp/gnus/gnus-async.el
lisp/gnus/gnus-cache.el
lisp/gnus/gnus-cloud.el
lisp/gnus/gnus-sum.el
lisp/gnus/gnus.el
lisp/gnus/nnvirtual.el
lisp/obsolete/nnir.el