Subject: bug#35208: 27.0.50; Gnus nndraft error when saving message buffer

From: "Basil L. Contovounesios" <[email-masked]>
Date: Wed, 10 Apr 2019 18:24:02 +0100

Katsumi Yamaoka <[email-masked]> writes:

> On Tue, 09 Apr 2019 14:46:20 +0100, Basil L. Contovounesios wrote:
>> Trying to save a draft, e.g. as follows:
>
>> 0. HOME=$(mktemp -d) emacs -Q
>> 1. M-x toggle-debug-on-error RET
>> 2. (setq gnus-select-method '(nnnil)) C-j
>> 3. M-x gnus RET
>> 4. m
>> 5. foo C-x C-s
>
>> results in the following error:
>
> The message is saved with no error, hmmm.  I did
>
> mv .emacs dot-emacs
> mv .newsrc dot-newsrc
> mv .newsrc.eld dot-newsrc.eld
> mv .gnus.el dot-gnus.el
> rm .*~
>
> and the recipe with the latest Emacs master.

Hmm, that's odd.  I can reproduce the error 100% of the time.
I even tried a clean Emacs checkout on a clean OS install:

0. Install Debian Testing in a VirtualBox VM.
1. apt-get build-dep emacs-lucid
2. git clone https://git.savannah.gnu.org/git/emacs.git
3. cd emacs
4. ./autogen.sh all && ./configure && make
5. ./src/emacs -Q
6. Repeat steps 1-5 from my OP.

I include the details of this Emacs build after my signature.

Another thing I noticed, which I don't remember seeing before:

0. HOME=$(mktemp -d) emacs -Q
1. (setq gnus-select-method '(nnnil)) C-j
2. M-x gnus RET
3. m
4. C-x 4 C-o RET
5. foo C-x C-s

The *Group* buffer now has the following contents:

       1: nndraft:drafts
 K#    0: nndraft:queue

where the text properties at bol of the first group are:

  cursor-sensor-functions (gnus-tool-bar-update)
  face                 gnus-group-mail-1
  gnus-group           "nndraft:drafts"
  gnus-indentation     ""
  gnus-level           1
  gnus-marked          32
  gnus-unread          1

and those at bol of the second group are:

  cursor-sensor-functions (gnus-tool-bar-update)
  face                 gnus-group-news-low-empty
  gnus-group           "nndraft:queue"
  gnus-indentation     ""
  gnus-level           9
  gnus-marked          32
  gnus-unread          0

In Emacs 26, the second group nndraft:queue doesn't appear after saving
the *unsent mail* buffer.  I suspect this seemingly unexpected group has
something to do with nndraft-update-unread-articles choking.

Thanks,

-- 
Basil

In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5)
 of 2019-04-10 built on test
Repository revision: 0cef057b02b088ded8b46e3453ac0d891888423a
Repository branch: master
System Description: Debian GNU/Linux buster/sid

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF
XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD
PDUMPER LCMS2 GMP

Important settings:
  value of $LANG: en_IE.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Message

Minor modes in effect:
  gnus-message-citation-mode: t
  mml-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  auto-fill-function: message-do-auto-fill
  transient-mark-mode: t
  abbrev-mode: t

Load-path shadows:
None found.