From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/79101 Path: news.gmane.org!not-for-mail From: Tassilo Horn Newsgroups: gmane.emacs.gnus.general Subject: Bug with referring articles (was: chasing mail threads) Date: Wed, 15 Jun 2011 09:42:39 +0200 Message-ID: <87fwnbr15c.fsf@fastmail.fm> References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1308123837 32705 80.91.229.12 (15 Jun 2011 07:43:57 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 15 Jun 2011 07:43:57 +0000 (UTC) Cc: Andreas Schwab , ding@gnus.org To: Dave Abrahams Original-X-From: ding-owner+M27400@lists.math.uh.edu Wed Jun 15 09:43:52 2011 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QWklP-0006sP-T8 for ding-account@gmane.org; Wed, 15 Jun 2011 09:43:48 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1QWkkR-0000G4-PI; Wed, 15 Jun 2011 02:42:47 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1QWkkP-0000Fq-Fc for ding@lists.math.uh.edu; Wed, 15 Jun 2011 02:42:45 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1QWkkN-0000pR-VM for ding@lists.math.uh.edu; Wed, 15 Jun 2011 02:42:45 -0500 Original-Received: from deliver.uni-koblenz.de ([141.26.64.15]) by quimby.gnus.org with esmtp (Exim 4.72) (envelope-from ) id 1QWkkM-00061I-4a for ding@gnus.org; Wed, 15 Jun 2011 09:42:42 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by deliver.uni-koblenz.de (Postfix) with ESMTP id 97F2AD23F5; Wed, 15 Jun 2011 09:42:41 +0200 (CEST) X-Virus-Scanned: amavisd-new at uni-koblenz.de Original-Received: from deliver.uni-koblenz.de ([127.0.0.1]) by localhost (deliver.uni-koblenz.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FpuceyOaGnwK; Wed, 15 Jun 2011 09:42:41 +0200 (CEST) X-CHKRCPT: Envelopesender noch thorn@fastmail.fm Original-Received: from thinkpad (tsdh.uni-koblenz.de [141.26.67.142]) by deliver.uni-koblenz.de (Postfix) with ESMTPA id 9067ED23F2; Wed, 15 Jun 2011 09:42:40 +0200 (CEST) User-Agent: Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.50 (gnu/linux) X-Spam-Score: -4.9 (----) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:79101 Archived-At: Dave Abrahams writes: Hi Dave, >> See gnus-refer-article-method. > > Okay, I see it. I do appreciate the hint, but it's practically > undocumented, and I'm not familiar enough with Gnus internals to have > any idea how to take advantage of it. Could you perhaps elaborate a > bit? ,----[ C-h v gnus-refer-article-method RET ] | gnus-refer-article-method is a variable defined in `gnus.el'. | Its value is (current | (nnregistry) | (nnweb "gmane" | (nnweb-type gmane)) | (nnweb "google" | (nnweb-type google))) | | Original value was current `---- So my setting for referring articles means, - try to find the message in the current select method, - if that doesn't work, query the registry, - if that doesn't work, ask gmane via the web, - if all fails, try google groups. The second entry requires the gnus registry, of course. So you have to initialize it in your ~/.gnus.el with (gnus-registry-initialize) I'm not completely sure, but I have the gut feeling that `current' should actually work for IMAP (you are using IMAP, right?). But that's the default value, and you say it doesn't work for you... Ok, so now I've edebugged that stuff, and it seems there is a bug. First, I moved some parent article from my IMAP ding group to my normal INBOX. Mork concretely, I've moved lee's article "problems with archive" / <87d3ig2qcf.fsf@yun.yagibdah.de> from nnimap+Fastmail:INBOX.mailinglists.ding to nnimap+Fastmail:INBOX, so that lee's "Re: problems with archive" / <8739jc13hi.fsf@yun.yagibdah.de> is left alone in the ding group and hitting `^' on it will trigger article referring. In `gnus-summary-refer-article' there's this loop ,----[ ~/repos/el/gnus/lisp/gnus-sum.el ] | (catch 'found | (dolist (gnus-override-method (gnus-refer-article-methods)) | (when (and (gnus-check-server gnus-override-method) | ;; Fetch the header, | (setq number (gnus-summary-insert-subject message-id))) | ;; and display the article. | (gnus-summary-select-article nil nil nil number) | (throw 'found t))) `---- which should try all article refer methods until one finds the referred article. But that doesn't work at all. The problem is that `gnus-summary-insert-subject' doesn't find the referred article (1), although its on the same server but a different IMAP folder. But instead it inserts a pseudo-article and returns 0, thus the `when' succeeds and 'found is thrown and no other refer methods are tried. IMHO, the pseudo-article should be inserted only after all refer methods failed... (1) Is it correct that IMAP has no way to find a message by Message-ID in all folders? In my case, I've just moved the referred article from my ding group to the INBOX on the same IMAP server and had expected the `current' gnus-refer-article-method to work by searching for that Message-ID on the server... Bye, Tassilo -- Sent from my Emacs