Announcements and discussions for Gnus, the GNU Emacs Usenet newsreader
 help / color / mirror / Atom feed
From: Peter Davis <pd@world.std.com>
Subject: Re: pop3 leave on server, then fetch, Expire = delete from server
Date: 01 May 2002 14:56:56 -0400	[thread overview]
Message-ID: <adrjzog7.fsf@bitstream.com> (raw)
In-Reply-To: <m3pu0g7j7j.fsf@peorth.gweep.net>

Stainless Steel Rat <ratinox@peorth.gweep.net> writes:

> * "Peter Davis" <pdavis@pageflexinc.com>  on Tue, 30 Apr 2002
> | I could live with an explicit function that expunges all messages that are
> | marked for expiration.
> 
> POP does not work that way.  The client never expunges messages.  All the
> client does is send DELE msg-id commands where msg-id is the sequential
> number of a message in the drop to mark for deletion.  Deletion does not
> actually occour until the client gracefully closes the connection to the
> server with the QUIT command.  If the server does not receive the QUIT
> command from the client it will automatically invoke RSET and remove all
> DELE marks from the drop.

Let me try this again.  Franklin Lee's epop3mail and pop3.el (in
XEmacs) both have the ability to leave messages on the server.  They
record a listing of message IDs in files (.uidls...something) in order
to know which messages have been downloaded.  As far as I can tell,
the messages themselves also contain the message ID and the
mail-source from which the message came.

Suppose that whenever one of these messages is marked as expirable,
gnus also marks the corresponding message ID in the appropriate .uidls
file.  Then, when I want to expunge, I have a function which reads the
.uidls file, connects with the server and deletes those messages which
have been so marked.  Am I missing something?  This doesn't require
anything other than what POP already does.

In fact, Franklin Lee's package also includes epop3-manage-mailbox,
which can connect to a server, display a list of messages on that
server, and allow users to selectively delete those messages (by
marking them and then typing 'x' to delete all marked messages).  I am
not an e-lisp expert, but it seems to me the pieces are already there,
and someone with more know-how could connect them to make the server
expunging "automatic".


> > If the time the server requires to parse your drop is greater than its
> internal timeout (30 seconds by default on many servers) then you will not
> be able to get your mail.  The server will drop the connection before the
> client can acknowledge the results of the STAT command.  This is why leave
> mail on server is Evil Incarnate.  On top of that, nnpop3 needs to be able
> to handle a server side timeout connection close and client reconnect for
> every message being read, with the caveat that the contents of the drop
> will change between sessions as new mail is delivered to it.

The messages would be marked, and then all deleted at once by some
user-invoked function.

> See, I planned out nnpop3 back in 1995.  I knew exactly how to make it
> work.  And then I realized how rock-stupid it would be to write something
> that I -knew- would cause mail to bounce.  POP is totally inappropriate for
> a backend for these reasons.

Well, I never envisioned it as a back end.  I thought it could just be
a new function that expunges messages which have expired.

-pd


-- 
--------
                             Peter Davis
               Funny stuff at http://www.pfdstudio.com
                 The artwork formerly shown as prints
    List of resources for children's writers and illustrators at:
                  http://www.pfdstudio.com/cwrl.html


  parent reply	other threads:[~2002-05-01 18:56 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-22 22:09 Seth Delackner
     [not found] ` <m3lmchdaaf.fsf@multivac.cwru.edu>
     [not found]   ` <m3bsddfwrc.fsf@peorth.gweep.net>
     [not found]     ` <aak14u$d00$1@news.bitstream.com>
     [not found]       ` <m37kmq75l9.fsf@multivac.cwru.edu>
     [not found]         ` <aamdpk$eoc$1@news.bitstream.com>
     [not found]           ` <m3pu0g7j7j.fsf@peorth.gweep.net>
2002-05-01 15:08             ` Paul Jarc
     [not found]               ` <m3elgvfys4.fsf@peorth.gweep.net>
2002-05-01 20:35                 ` Paul Jarc
     [not found]                   ` <m3it67tw9o.fsf@peorth.gweep.net>
2002-05-01 22:09                     ` Paul Jarc
2002-05-01 18:56             ` Peter Davis [this message]
     [not found]               ` <m3n0vjtwy4.fsf@peorth.gweep.net>
     [not found]                 ` <m3bsbz8tdo.fsf@multivac.cwru.edu>
     [not found]                   ` <m3y9f3cpx7.fsf@peorth.gweep.net>
     [not found]                     ` <m3r8kuejbz.fsf@multivac.cwru.edu>
     [not found]                       ` <m3pu0eja8o.fsf@peorth.gweep.net>
2002-05-03 13:52                         ` Peter Davis
     [not found]           ` <m3adrjdidq.fsf@multivac.cwru.edu>
2002-05-01 18:59             ` Peter Davis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=adrjzog7.fsf@bitstream.com \
    --to=pd@world.std.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).