From ec9750073ba925984f081a81a54a91a16bbdfcca Mon Sep 17 00:00:00 2001 From: yamaoka Date: Mon, 30 Jul 2001 10:27:40 +0000 Subject: [PATCH] * gnus-vers.el (gnus-revision-number): Increment to 04. * nnmh.el (nnmh-retrieve-parsed-headers): Abolished. * gnus-sum.el (gnus-get-newsgroup-headers-xover): Don't use `gnus-retrieve-parsed-headers'. (gnus-fetch-headers): Ditto. * gnus-int.el (gnus-retrieve-parsed-headers): Abolished. * gnus-cache.el (gnus-cache-braid-headers): Abolished. (gnus-cache-retrieve-parsed-headers): Abolished. --- ChangeLog | 15 +++++++++ lisp/gnus-cache.el | 93 ++-------------------------------------------------- lisp/gnus-int.el | 37 --------------------- lisp/gnus-sum.el | 57 +++++++++++++------------------- lisp/gnus-vers.el | 2 +- lisp/nnmh.el | 25 -------------- 6 files changed, 40 insertions(+), 189 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7d49591..7f9602c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,20 @@ 2001-07-30 Katsumi Yamaoka + * lisp/gnus-vers.el (gnus-revision-number): Increment to 04. + + * lisp/nnmh.el (nnmh-retrieve-parsed-headers): Abolished. + + * lisp/gnus-sum.el (gnus-get-newsgroup-headers-xover): Don't use + `gnus-retrieve-parsed-headers'. + (gnus-fetch-headers): Ditto. + + * lisp/gnus-int.el (gnus-retrieve-parsed-headers): Abolished. + + * lisp/gnus-cache.el (gnus-cache-braid-headers): Abolished. + (gnus-cache-retrieve-parsed-headers): Abolished. + +2001-07-30 Katsumi Yamaoka + * lisp/nnshimbun.el (nnshimbun-request-expire-articles): Bind `nnmail-expiry-wait-function' to nil if the group's parameter `expiry-wait' is specified by the user or the shimbun's default diff --git a/lisp/gnus-cache.el b/lisp/gnus-cache.el index befdb5c..7447eff 100644 --- a/lisp/gnus-cache.el +++ b/lisp/gnus-cache.el @@ -152,8 +152,8 @@ it's not cached." (group article headers ticked dormant unread &optional force) (when (and (or force (not (eq gnus-use-cache 'passive))) (numberp article) - (> article 0) - (vectorp headers)) ; This might be a dummy article. + (> article 0) ; This might be a dummy article. + (vectorp headers)) (let ((number article) file) ;; If this is a virtual group, we find the real group. (when (gnus-virtual-group-p group) @@ -326,65 +326,6 @@ it's not cached." cached articles)) type))))))) -(defun gnus-cache-retrieve-parsed-headers (articles group &optional fetch-old - dependencies force-new) - "Retrieve the parsed-headers for ARTICLES in GROUP." - (let ((cached - (setq gnus-newsgroup-cached (gnus-cache-articles-in-group group)))) - (if (not cached) - ;; No cached articles here, so we just retrieve them - ;; the normal way. - (let ((gnus-use-cache nil)) - (gnus-retrieve-parsed-headers articles group fetch-old - dependencies force-new)) - (let ((uncached-articles (gnus-sorted-intersection - (gnus-sorted-complement articles cached) - articles)) - (cache-file (gnus-cache-file-name group ".overview"))) - (gnus-cache-braid-headers - ;; We first retrieve all the headers that we don't have in - ;; the cache. - (prog1 - (let ((gnus-use-cache nil)) - (when uncached-articles - (and articles - (gnus-retrieve-parsed-headers - uncached-articles group fetch-old - dependencies)) - )) - (gnus-cache-save-buffers)) - ;; Then we insert the cached headers. - (cond ((not (file-exists-p cache-file)) - ;; There are no cached headers. - ) - ((eq gnus-headers-retrieved-by 'nov) - (with-current-buffer nntp-server-buffer - (erase-buffer) - (nnheader-insert-file-contents cache-file) - (nnheader-get-newsgroup-headers-xover* - articles nil dependencies group) - )) - (t - ;; We braid HEADs. - (nnheader-retrieve-headers-from-directory* - cached - (expand-file-name - (file-name-as-directory - (nnheader-translate-file-chars - (if (gnus-use-long-file-name 'not-cache) - group - (let ((group - (nnheader-replace-chars-in-string group ?/ ?_))) - ;; Translate the first colon into a slash. - (when (string-match ":" group) - (aset group (match-beginning 0) ?/)) - (nnheader-replace-chars-in-string group ?. ?/))) - t)) - gnus-cache-directory) - dependencies) - ))) - )))) - (defun gnus-cache-enter-article (&optional n) "Enter the next N articles into the cache. If not given a prefix, use the process marked articles instead. @@ -613,36 +554,6 @@ Returns the list of articles removed." (setq cached (cdr cached))) (kill-buffer cache-buf))) -(defun gnus-cache-braid-headers (headers cached-headers) - (if cached-headers - (if headers - (let (cached-header hrest nhrest) - (nconc (catch 'tag - (while cached-headers - (setq cached-header (car cached-headers)) - (if (< (mail-header-number cached-header) - (mail-header-number (car headers))) - (throw 'tag (nreverse cached-headers)) - (setq hrest headers - nhrest (cdr hrest)) - (while (and nhrest - (> (mail-header-number cached-header) - (mail-header-number (car nhrest)))) - (setq hrest nhrest - nhrest (cdr nhrest)) - ) - ;;(if nhrest - (setcdr hrest (cons cached-header nhrest)) - ;; (setq headers - ;; (nconc headers (list cached-header))) - ;; (throw 'tag nil) - ;;) - ) - (setq cached-headers (cdr cached-headers)))) - headers)) - (nreverse cached-headers)) - headers)) - ;;;###autoload (defun gnus-jog-cache () "Go through all groups and put the articles into the cache. diff --git a/lisp/gnus-int.el b/lisp/gnus-int.el index a5021bd..0fb9a18 100644 --- a/lisp/gnus-int.el +++ b/lisp/gnus-int.el @@ -299,43 +299,6 @@ If FETCH-OLD, retrieve all headers (or some subset thereof) in the group." articles (gnus-group-real-name group) (nth 1 gnus-command-method) fetch-old)))) -(defun gnus-retrieve-parsed-headers (articles group &optional fetch-old - dependencies force-new) - "Request parsed-headers for ARTICLES in GROUP. -If FETCH-OLD, retrieve all headers (or some subset thereof) in the group." - (unless dependencies - (setq dependencies - (save-excursion - (set-buffer gnus-summary-buffer) - gnus-newsgroup-dependencies))) - (let ((gnus-command-method (gnus-find-method-for-group group)) - headers) - (if (and gnus-use-cache (numberp (car articles))) - (setq headers - (gnus-cache-retrieve-parsed-headers articles group fetch-old - dependencies force-new)) - (let ((func (gnus-get-function gnus-command-method - 'retrieve-parsed-headers 'no-error))) - (if func - (setq headers (funcall func articles dependencies - (gnus-group-real-name group) - (nth 1 gnus-command-method) fetch-old - force-new) - gnus-headers-retrieved-by (car headers) - headers (cdr headers)) - (setq gnus-headers-retrieved-by - (funcall - (gnus-get-function gnus-command-method 'retrieve-headers) - articles (gnus-group-real-name group) - (nth 1 gnus-command-method) fetch-old)) - ))) - (or headers - (if (eq gnus-headers-retrieved-by 'nov) - (gnus-get-newsgroup-headers-xover - articles nil dependencies gnus-newsgroup-name t) - (gnus-get-newsgroup-headers dependencies))) - )) - (defun gnus-retrieve-articles (articles group) "Request ARTICLES in GROUP." (let ((gnus-command-method (gnus-find-method-for-group group))) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 504b09b..e470d0e 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -389,7 +389,7 @@ this variable specifies group names." (cons :value ("" "") regexp (repeat string)) (sexp :value nil)))) -(defcustom gnus-unread-mark ? ;Whitespace +(defcustom gnus-unread-mark ?\ ;;;Whitespace "*Mark used for unread articles." :group 'gnus-summary-marks :type 'character) @@ -464,7 +464,7 @@ this variable specifies group names." :group 'gnus-summary-marks :type 'character) -(defcustom gnus-no-mark ? ;Whitespace +(defcustom gnus-no-mark ?\ ;;;Whitespace "*Mark used for articles that have no other secondary mark." :group 'gnus-summary-marks :type 'character) @@ -514,7 +514,7 @@ this variable specifies group names." :group 'gnus-summary-marks :type 'character) -(defcustom gnus-empty-thread-mark ? ;Whitespace +(defcustom gnus-empty-thread-mark ?\ ;;;Whitespace "*There is no thread under the article." :group 'gnus-summary-marks :type 'character) @@ -2880,7 +2880,7 @@ buffer that was in action when the last article was fetched." (if (or (null gnus-summary-default-score) (<= (abs (- gnus-tmp-score gnus-summary-default-score)) gnus-summary-zcore-fuzz)) - ? ;Whitespace + ?\ ;;;Whitespace (if (< gnus-tmp-score gnus-summary-default-score) gnus-score-below-mark gnus-score-over-mark))) (gnus-tmp-replied @@ -2946,7 +2946,7 @@ buffer that was in action when the last article was fetched." (if (or (null gnus-summary-default-score) (<= (abs (- score gnus-summary-default-score)) gnus-summary-zcore-fuzz)) - ? ;Whitespace + ?\ ;;;Whitespace (if (< score gnus-summary-default-score) gnus-score-below-mark gnus-score-over-mark)) 'score)) @@ -4271,7 +4271,7 @@ or a straight list of headers." (if (or (null gnus-summary-default-score) (<= (abs (- gnus-tmp-score gnus-summary-default-score)) gnus-summary-zcore-fuzz)) - ? ;Whitespace + ?\ ;;;Whitespace (if (< gnus-tmp-score gnus-summary-default-score) gnus-score-below-mark gnus-score-over-mark)) gnus-tmp-replied @@ -4389,30 +4389,20 @@ or a straight list of headers." (let ((name (gnus-group-decoded-name gnus-newsgroup-name))) (gnus-message 5 "Fetching headers for %s..." name) (prog1 - ;;;!!! FIXME: temporary fix for an infloop on nnimap. - (if (eq 'nnimap (car (gnus-find-method-for-group name))) - (if (eq 'nov - (setq gnus-headers-retrieved-by - (gnus-retrieve-headers - articles gnus-newsgroup-name - ;; We might want to fetch old headers, but - ;; not if there is only 1 article. - (and (or (and - (not (eq gnus-fetch-old-headers 'some)) - (not (numberp gnus-fetch-old-headers))) - (> (length articles) 1)) - gnus-fetch-old-headers)))) - (gnus-get-newsgroup-headers-xover - articles nil nil gnus-newsgroup-name t) - (gnus-get-newsgroup-headers)) - (gnus-retrieve-parsed-headers - articles gnus-newsgroup-name - ;; We might want to fetch old headers, but - ;; not if there is only 1 article. - (and (or (and (not (eq gnus-fetch-old-headers 'some)) - (not (numberp gnus-fetch-old-headers))) - (> (length articles) 1)) - gnus-fetch-old-headers))) + (if (eq 'nov + (setq gnus-headers-retrieved-by + (gnus-retrieve-headers + articles gnus-newsgroup-name + ;; We might want to fetch old headers, but + ;; not if there is only 1 article. + (and (or (and + (not (eq gnus-fetch-old-headers 'some)) + (not (numberp gnus-fetch-old-headers))) + (> (length articles) 1)) + gnus-fetch-old-headers)))) + (gnus-get-newsgroup-headers-xover + articles nil nil gnus-newsgroup-name t) + (gnus-get-newsgroup-headers)) (gnus-message 5 "Fetching headers for %s...done" name)))) (defun gnus-select-newsgroup (group &optional read-all select-articles) @@ -5200,11 +5190,8 @@ Return a list of headers that match SEQUENCE (see (let ((gnus-nov-is-evil t)) (nconc (nreverse headers) - ;;;!!! FIXME: temporary fix for an infloop on nnimap. - (if (eq 'nnimap (car (gnus-find-method-for-group group))) - (when (gnus-retrieve-headers sequence group) - (gnus-get-newsgroup-headers)) - (gnus-retrieve-parsed-headers sequence group)))))))) + (when (eq (gnus-retrieve-headers sequence group) 'headers) + (gnus-get-newsgroup-headers)))))))) (defun gnus-article-get-xrefs () "Fill in the Xref value in `gnus-current-headers', if necessary. diff --git a/lisp/gnus-vers.el b/lisp/gnus-vers.el index 5460d8f..2fd60fa 100644 --- a/lisp/gnus-vers.el +++ b/lisp/gnus-vers.el @@ -34,7 +34,7 @@ (require 'product) (provide 'gnus-vers) -(defconst gnus-revision-number "03" +(defconst gnus-revision-number "04" "Revision number for this version of gnus.") ;; Product information of this gnus. diff --git a/lisp/nnmh.el b/lisp/nnmh.el index 1b660f9..9d7eeec 100644 --- a/lisp/nnmh.el +++ b/lisp/nnmh.el @@ -125,31 +125,6 @@ as unread by Gnus.") ;; (nnheader-fold-continuation-lines) 'headers)))) -(deffoo nnmh-retrieve-parsed-headers (articles - dependencies - &optional newsgroup server fetch-old - force-new) - (save-excursion - (set-buffer nntp-server-buffer) - (let* ((file nil) - (number (length articles)) - (large (and (numberp nnmail-large-newsgroup) - (> number nnmail-large-newsgroup))) - (count 0) - (file-name-coding-system 'binary) - (pathname-coding-system 'binary) - (case-fold-search t) - ;;beg - article - headers header id end ref lines chars ctype in-reply-to - (cur (current-buffer))) - (nnmh-possibly-change-directory newsgroup server) - ;; We don't support fetching by Message-ID. - (nnheader-retrieve-headers-from-directory - articles nnmh-current-directory dependencies - fetch-old force-new large "nnmh") - ))) - (deffoo nnmh-open-server (server &optional defs) (nnoo-change-server 'nnmh server defs) (when (not (file-exists-p nnmh-directory)) -- 1.7.10.4