[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: expiry =? expunge



Osma Ahvenlampi <oa-lists@spray.fi> writes:

> The part that should be improved is that there should be a fairly
> simple way of showing \Deleted messages in a folder with
> nnimap/gnus.

Yep.

> Perhaps nnimap should display the articles pre-marked somehow?
> Hmm.. There's a group parameter in Gnus, I believe (visible . t),
> which instructs Gnus to display all articles by default when
> entering a group. When this is on, does nnimap show also \Deleted
> messages? If so, I think the current behaviour is good.

No. Since Gnus doesn't have a deleted-mark like IMAP has nnimap hides
all \Deleted articles from Gnus. There should be no way Gnus can get a
\Deleted article from nnimap.

I don't think this is a serious problem. In gnus/nnimap \Deleted
articles are articles that has had a confirmed delete operation ran on
them (either `B del' or the expiry process). So they shouldn't really
be around anymore.

It would be _nice_ if Gnus had a deleted mark. Then people setting
\Deleted marks in other imap clients and have configured all their
clients not to run EXPUNGE would be able too operate on thoose
\Deleted articles using nnimap. This is not a common situation since
most imap clients apparently had a half-on default to expunge
articles.

> Think of what happens when you enter the folder with another client,
> which might have the default behaviour of expunging on close. All
> messages which the user simply marked expirable in Gnus will be
> expunged ahead of time!

I agree, we should keep the current situation, possibly improving it
by implementing a deleted-mark in Gnus.

> > What it boils down to is to map the Gnus expiry process into the IMAP
> > expiry process. I hadn't realized this was possible, hence the client
> 
> Unfortunately, IMAP does not have an expiry process. If it was
> possible to execute EXPUNGE on only messages marked as \Deleted AND
> more-than-n-days-old, I might agree.

It can be done. Search for \Deleted articles, remove mark on articles
that shouldn't be removed, run EXPUNGE, re-set mark on articles.

This scheme is also the only way to remove article X, which `B del'
should do (currently it only set the \Deleted mark).

> Even so, the behaviour of other clients might make me want to lean
> on the safe side of an additional mark.

Yes. It's the reason why it isn't a good idea.