all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Simon Josefsson <jas@extundo.com>
Cc: bugs@gnus.org, emacs-devel@gnu.org
Subject: Re: Gnus reads my mail
Date: Tue, 15 Feb 2005 22:54:48 +0100	[thread overview]
Message-ID: <ilu7jl9wkt3.fsf@latte.josefsson.org> (raw)
In-Reply-To: <87vf8u54kb.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Tue, 15 Feb 2005 08:53:48 -0500")

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> Although Gnus did not literally *eat* my email, I find this problem to be
> very serious since it might make me miss important email messages.

Agreed.

> - .../trunk/src/emacs --eval '(setq imap-debug t nnimap-debug t)' -f gnus
> - type in my imap password
> - save *imap-debug* to `imap-log-startup'

It appears the problem is in this part alone.  It is easier to read if
you only enable `imap-log', and paste the result from the *imap-log*
buffer, but the same information is stored in the debug buffers too,
so I'm trying to read them below:

> | | | | | | 7 -> imap-arrival-filter: proc=#<process imap> string="* STATUS emacs (UNSEEN 35 UIDNEXT 22270 UIDVALIDITY 1062436086)


Ok, here your server reports that there are 35 unseen messages in the
emacs group.  Good.

> | | | | | 6 -> imap-send-command: command="EXAMINE \"emacs\"" buffer=nil

> | | | | | | 7 <- imap-send-command-1: nil
> | | | | | 6 <- imap-send-command: 26
> | | | | | 6 -> imap-wait-for-tag: tag=26 buffer=nil
> | | | | | | 7 -> imap-arrival-filter: proc=#<process imap> string="* 5415 EXISTS

> * 0 RECENT

> * OK [UIDVALIDITY 1062436086] UID validity status

> * OK [UIDNEXT 22270] Predicted next UID

> * FLAGS (gnus-expire gnus-forward \\Answered \\Flagged \\Deleted \\Draft \\Seen)

> * OK [PERMANENTFLAGS ()] Permanent flags

> * OK [UNSEEN 5381] first unseen message in /export/home/mail/monnier/Mail/emacs

> 26 OK [READ-ONLY] EXAMINE completed


And here Gnus enter the group read-only (EXAMINE).

> | | | | 5 -> imap-send-command-1: cmdstr="28 STATUS \"emacs\" (UIDNEXT)"
> | | | | 5 <- imap-send-command-1: nil
> | | | 4 <- imap-send-command: 28
> | | | 4 -> imap-wait-for-tag: tag=28 buffer=nil
> | | | | 5 -> imap-arrival-filter: proc=#<process imap> string="* NO CLIENT BUG DETECTED: STATUS on selected mailbox: emacs

> * STATUS emacs (UIDNEXT 22270)

> 28 OK STATUS completed

> "

Here Gnus asks for the UIDNEXT, which seem fine.

I believe the UoW warning is incorrect, sending STATUS on the
currently selected mailbox is valid according to RFC 2060.  This have
changed in RFC 3501, which say this is a SHOULD NOT operation, but the
justification given and the suggested workarounds aren't applicable to
what Gnus want to do.  Admittedly, Gnus (nnimap) could special-case
the STATUS on a selected mailbox, and return correct data immediately.
(Patches welcome..)

> | | | | | | 7 -> imap-send-command-1: cmdstr="65 SELECT \"emacs\""
> | | | | | | 7 <- imap-send-command-1: nil
> | | | | | 6 <- imap-send-command: 65
> | | | | | 6 -> imap-wait-for-tag: tag=65 buffer=nil
> | | | | | | 7 -> imap-arrival-filter: proc=#<process imap> string="* 5415 EXISTS

> * 0 RECENT

> * OK [UIDVALIDITY 1062436086] UID validity status

> * OK [UIDNEXT 22270] Predicted next UID

> * FLAGS (gnus-expire gnus-forward \\Answered \\Flagged \\Deleted \\Draft \\Seen)

> * OK [PERMANENTFLAGS (gnus-expire gnus-forward \\* \\Answered \\Flagged \\Deleted \\Draft \\Seen)] Permanent flags

> * OK [UNSEEN 5381] first unseen message in /export/home/mail/monnier/Mail/emacs

> 65 OK [READ-WRITE] SELECT completed


Here Gnus select the group read-write.

> | | | | 5 -> imap-send-command-1: cmdstr="68 STATUS \"emacs\" (UNSEEN)"
> | | | | 5 <- imap-send-command-1: nil
> | | | 4 <- imap-send-command: 68
> | | | 4 -> imap-wait-for-tag: tag=68 buffer=nil
> | | | | 5 -> imap-arrival-filter: proc=#<process imap> string="* NO CLIENT BUG DETECTED: STATUS on selected mailbox: emacs

> * STATUS emacs (UNSEEN 0)

> 68 OK STATUS completed


And here Gnus asks for the number of UNSEEN messages in the group.  It
is now 0.  I didn't remove any operation on your emacs folder above,
and Gnus didn't remove any SEEN flags in the group, so something other
than Gnus must have reset the unseen count.

I suspect the UoW implementation of the STATUS command on a currently
selected mailbox is buggy.

The STATUS value is used by Gnus in the group buffer, that's why it
reads 0 there.

      reply	other threads:[~2005-02-15 21:54 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-15 13:53 Gnus reads my mail Stefan Monnier
2005-02-15 21:54 ` Simon Josefsson [this message]

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=ilu7jl9wkt3.fsf@latte.josefsson.org \
    --to=jas@extundo.com \
    --cc=bugs@gnus.org \
    --cc=emacs-devel@gnu.org \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.