From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/33912 Path: main.gmane.org!not-for-mail From: NAGY Andras Newsgroups: gmane.emacs.gnus.general Subject: Re: nnimap-expiry-target? Date: 28 Dec 2000 01:29:32 +0100 Sender: owner-ding@hpc.uh.edu Message-ID: <87lmt1mlqr.fsf@lovi.inf.elte.hu> References: <87bsu3g6xk.fsf@lovi.inf.elte.hu> NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1035169931 27634 80.91.224.250 (21 Oct 2002 03:12:11 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2002 03:12:11 +0000 (UTC) Return-Path: Original-Received: from lisa.math.uh.edu (lisa.math.uh.edu [129.7.128.49]) by mailhost.sclp.com (Postfix) with ESMTP id ECBEAD049D for ; Wed, 27 Dec 2000 19:34:06 -0500 (EST) Original-Received: from sina.hpc.uh.edu (lists@Sina.HPC.UH.EDU [129.7.3.5]) by lisa.math.uh.edu (8.9.1/8.9.1) with ESMTP id SAB02653; Wed, 27 Dec 2000 18:30:59 -0600 (CST) Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Wed, 27 Dec 2000 18:29:50 -0600 (CST) Original-Received: from mailhost.sclp.com (postfix@66-209.196.61.interliant.com [209.196.61.66] (may be forged)) by sina.hpc.uh.edu (8.9.3/8.9.3) with ESMTP id SAA03259 for ; Wed, 27 Dec 2000 18:29:38 -0600 (CST) Original-Received: from mail.elte.hu (mail.elte.hu [157.181.151.13]) by mailhost.sclp.com (Postfix) with ESMTP id 75C21D049D for ; Wed, 27 Dec 2000 19:30:00 -0500 (EST) Original-Received: from lovi.inf.elte.hu (proxy.inf.elte.hu [157.181.161.14]) by mail.elte.hu (Postfix) with ESMTP id B3DE36DCE3 for ; Thu, 28 Dec 2000 01:29:32 +0100 (CET) Original-Received: from nagya by lovi.inf.elte.hu with local (Exim 3.12 #1 (Debian)) id 14BQwm-0005aM-00 for ; Thu, 28 Dec 2000 01:29:32 +0100 Original-To: ding@gnus.org In-Reply-To: Original-Lines: 59 User-Agent: Gnus/5.090001 (Oort Gnus v0.01) XEmacs/21.1 (Capitol Reef) Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:33912 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:33912 Simon Josefsson writes: > NAGY Andras writes: > > > Shouldn't nnimap support nnmail-expiry-target (which allows expired > > articles to be moved to a specific group instead of being deleted) > > Yup, I've added support for it in CVS. Does it work? Depends. Given a group, INBOX.test.foo, with parameters (total-expire . t) and (expiry-wait . immediate), and nnmail-expiry-target set to "INBOX.test.arch", where the latter group does not exist and the default select method is something different from imap. C-c C-x on INBOX.test.foo results in: Signaling: (void-function nnspool-request-accept-article) nnspool-request-accept-article("INBOX.test.arch" "" nil) gnus-request-accept-article("INBOX.test.arch" nil nil t) nnmail-expiry-target-group("INBOX.test.arch" "INBOX.test.foo") nnimap-expiry-target((4 . 6) "INBOX.test.foo" "mailbox") nnimap-request-expire-articles((4 5 6) "INBOX.test.foo" "mailbox" nil) gnus-request-expire-articles((4 5 6) "nnimap+mailbox:INBOX.test.foo") gnus-group-expire-articles-1("nnimap+mailbox:INBOX.test.foo") gnus-group-expire-articles(nil) call-interactively(gnus-group-expire-articles) # gnus-topic-find-groups gnus-level-killed t gnus-group-marked nil "Expiring groups in %s...done"] 6 ("/home/nagya/gnus/gnus-build/lisp/gnus-topic.elc" . 23870) (list (gnus-group-topic-name))>(nil) call-interactively(gnus-topic-expire-articles) It tries to use the default select method for storing the article, instead of imap, therefore the fully qualified group name should be given in expiry-target. Not sure if this is a bug. Anyway, it seems to me that it downloads the article in question, then respools it in the target group. On imap targets, this should be optimized out, by using server side copying. (Like in the case of splitting.) Fails to save if the archive group does not exist (autocreate?), but deletes anyway. Using imap target by default and autocreate would be nice, as they allow constructs like this (store expired foo.bar aritcles in archive.foo.bar): (setq nnmail-expiry-target (lambda (group) (replace-in-string group "\\`\\(INBOX\\.\\|\\)\\(.*\\)" "INBOX.archive.\\2"))) Otherwise (with existsing, fully qualified target group) works fine. Andras