Package: neomutt
Version: 20201127+dfsg.1-1.2
Severity: important

I think this is going to be a pretty difficult one to figure out!

Sometimes, when viewing my INBOX (at least; perhaps other folders
too) and selecting a mail to view in the pager, the wrong mail is
displayed in the pager. It's a mail from the same thread (I think
this only happens with messages in threads), possibly (but I have
not confirmed this) always an 'adjacent' mail.

A consequence of this, when it happens, is I'm really hesitant to 
delete mails, since I can't be sure I will be deleting the right
messages.

My config: invoke neomutt via an alias m=neomutt. I'll attach all
my config files to this email or a follow-up.  (Sorry, they are a
mess).  I use neomutt with IMAP.

-- Package-specific info:
NeoMutt 20201127
Copyright (C) 1996-2020 Michael R. Elkins and others.
NeoMutt comes with ABSOLUTELY NO WARRANTY; for details type 'neomutt -vv'.
NeoMutt is free software, and you are welcome to redistribute it
under certain conditions; type 'neomutt -vv' for details.

System: Linux 5.10.0-6-amd64 (x86_64)
ncurses: ncurses 6.2.20201114 (compiled with 6.2.20201114)
libidn: 1.33 (compiled with 1.33)
GPGME: 1.14.0-unknown
GnuTLS: 3.7.1
libnotmuch: 5.3.0
storage: tokyocabinet

Configure options: --build=x86_64-linux-gnu --prefix=/usr 
{--includedir=${prefix}/include} {--mandir=${prefix}/share/man} 
{--infodir=${prefix}/share/info} --sysconfdir=/etc --localstatedir=/var 
--disable-option-checking --disable-silent-rules 
{--libdir=${prefix}/lib/x86_64-linux-gnu} 
{--libexecdir=${prefix}/lib/x86_64-linux-gnu} --disable-maintainer-mode 
--disable-dependency-tracking --mandir=/usr/share/man --libexecdir=/usr/libexec 
--with-mailpath=/var/mail --gpgme --lua --notmuch --with-ui --gnutls --gss 
--idn --mixmaster --sasl --tokyocabinet --sqlite --autocrypt

Compilation CFLAGS: -g -O2 
-ffile-prefix-map=/build/neomutt-aFsTyZ/neomutt-20201127+dfsg.1=. 
-fstack-protector-strong -Wformat -Werror=format-security -std=c99 
-D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__ -I/usr/include 
-I/usr/include/lua5.4 -DNCURSES_WIDECHAR -isystem /usr/include/mit-krb5

Default options:
  +attach_headers_color +compose_to_sender +compress +cond_date +debug 
  +encrypt_to_self +forgotten_attachments +forwref +ifdef +imap +index_color 
  +initials +limit_current_thread +multiple_fcc +nested_if +new_mail +nntp +pop 
  +progress +quasi_delete +regcomp +reply_with_xorig +sensible_browser +sidebar 
  +skip_quoted +smtp +status_color +timeout +tls_sni +trash 

Compile options:
  +autocrypt +bkgdset +color +curs_set +fcntl -flock -fmemopen +futimens 
  +getaddrinfo +gnutls +gpgme +gss +hcache -homespool +idn +inotify 
  -locales_hack +lua +meta +mixmaster +nls +notmuch -openssl +pgp +regex +sasl 
  +smime +sqlite +start_color +sun_attachment +typeahead 
MAILPATH="/var/mail"
MIXMASTER="mixmaster"
PKGDATADIR="/usr/share/neomutt"
SENDMAIL="/usr/sbin/sendmail"
SYSCONFDIR="/etc"

To learn more about NeoMutt, visit: https://neomutt.org
If you find a bug in NeoMutt, please raise an issue at:
    https://github.com/neomutt/neomutt/issues
or send an email to: <neomutt-de...@neomutt.org>

-- System Information:
Debian Release: 11.0
  APT prefers stable-security
  APT policy: (999, 'stable-security'), (990, 'stable'), (500, 
'stable-updates'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-6-amd64 (SMP w/24 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_GB.UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages neomutt depends on:
ii  libc6             2.32-4
ii  libgnutls30       3.7.1-5
ii  libgpg-error0     1.38-2
ii  libgpgme11        1.14.0-1+b2
ii  libgssapi-krb5-2  1.18.3-6
ii  libidn11          1.33-3
ii  liblua5.4-0       5.4.2-2
ii  libncursesw6      6.2+20201114-2
ii  libnotmuch5       0.31.4-2
ii  libsasl2-2        2.1.27+dfsg-2.1
ii  libsqlite3-0      3.34.1-3
ii  libtinfo6         6.2+20201114-2
ii  libtokyocabinet9  1.4.48-13
ii  sensible-utils    0.0.14

Versions of packages neomutt recommends:
ii  libsasl2-modules  2.1.27+dfsg-2.1
ii  locales           2.32-4
ii  mime-support      3.66

Versions of packages neomutt suggests:
ii  aspell                                     0.60.8-3
ii  ca-certificates                            20210119
ii  exim4-daemon-light [mail-transport-agent]  4.94.2-7
ii  gnupg                                      2.2.27-2
ii  ispell                                     3.4.02-2
pn  mixmaster                                  <none>
ii  openssl                                    1.1.1k-1+deb11u1
ii  urlview                                    0.9-21+b1

Versions of packages neomutt is related to:
ii  neomutt  20201127+dfsg.1-1.2

-- no debconf information

-- 
πŸ‘±πŸ»      Jonathan Dowland
✎           j...@dow.land
πŸ”—       https://jmtd.net
# muttrc for jon@qusp
# not in version control
source ~/mail/mutt/muttrc.jon@qusp.redmars

# XXX move elsewhere
set encode_from=yes
# stuff we need before muttrc.main
index-format-hook  attn  "~h Content-Type:.multipart/mixed" "πŸ“Ž"

source ~/mail/mutt/muttrc.main

# let this be overridden by darkbg
color index brightmagenta default "~t alcopop.org"
source ~/mail/mutt/darkbg

source /etc/Muttrc.d/notmuch-mutt.rc

set imap_user = 'j...@redmars.org'
# set imap_pass…
set realname = "Jonathan Dowland" # XXX move to more common?

set folder = imaps://j...@redmars.org/
source "gpg -d ~/mail/mutt/redmars.passwords.gpg |"
set ssl_starttls=yes
set smtp_url = 'smtp://j...@redmars.org:587'
#set tunnel="ssh -q j...@redmars.org /usr/lib/dovecot/imap"
set spoolfile = =INBOX
set postponed = =Drafts

set record = =archive
folder-hook . 'my_hdr Bcc: j...@dow.land'

set header_cache = ~/.mail/hcache
set message_cachedir=~/.mail/hcache

# test
set display_filter="t-prot -mt -Mmutt --pgp-short"
# the newline trick here is not working sadly
color body color8 black "Sent from my iPhone[.\n]*"
color body color8 black "⚠ External sender.*"
color body color8 black "^(From|To|Sent|Subject): .*[\.\n]*"
color body color8 black ".---=| TOFU protection by t-prot: .* lines snipped 
|=---."

folder-hook . macro index S "<save-message>=missed<return>"
folder-hook . macro pager S "<save-message>=missed<return>"
folder-hook . macro index H "<save-message>=notspam<return>"
folder-hook . macro pager H "<save-message>=notspam<return>"
folder-hook . set pager_index_lines=0
folder-hook . set wait_key
folder-hook . macro index a "<save-message>=archive/<return>"
bind index A create-alias

folder-hook =phd macro index a "<save-message>=phd/archive/<return>"
folder-hook =cs-history macro index a 
"<save-message>=cs-history/archive/<return>"

folder-hook .              set from = "j...@dow.land"
folder-hook =l/debian-user set from = "jon+debian-u...@dow.land"

folder-hook .              set signature = ~/.signature
folder-hook =l/debian-user set signature = ~/mail/mutt/signature.debian

folder-hook =cs-history alternative_order text/html text/calendar text/plain 
text/*
# Jon's muttrc # Wed Jan  5 11:52:02 GMT 2005

# generic stuff (appropriate to any use of mutt)

#
## mailbox types and locations
#
unset record

# ^ = current folder (http://home.worldonline.dk/byrial/mutt/patches/)
# via http://wiki.mutt.org/index.cgi?MuttFaq/Folder
#folder-hook . 'set record="^"'

set nomark_old                        # new messages until read (no 'old')

set xterm_set_titles = yes
set xterm_title = "mutt: %f: %?m?%m messages&no messages?%?n? [%n NEW]?"

#
## displaying mail: index
## we try and use colour to indicate as much as possible, which frees up
## as much horizontal screen estate as possible. Display by thread,
## fallback to date, thraeads considered as old as the newest post.
#
# message status flags: O/N/D/* not needed (bold); how to express 'r'eplied, 
's'igned... %Z

set strict_threads = no                # don't group common-subjects
folder-hook . set sort=threads
set sort_aux=last-date                 # bump old threads 
bind index <Left>  collapse-thread     # easily hide threads
bind index <Right> collapse-thread

macro index i '<change-folder>?<toggle-mailboxes>'

# http://www.davidpashley.com/cgi/pyblosxom.cgi/2004/12/10#mutt-argh
bind index x noop                      
# don't like accidentally quitting and having to feed my GPG pass in again
set quit=ask-no

# Thu 29 Jun 12:29:12 BST 2017 - substituting "%> " for "%| " to work around a 
neomutt
# bug (866366)
folder-hook . "set index_format=\"\
%?M?\
%@thrd@   %@date@ %-15.15F %s%* %@flag@\
&\
%@attn@%4C %@date@ %-15.15F %s%* %@flag@\
?\""         # collapsed threads vs. normal mail
# %4C  %{%b %d} %-15.15t %-15.15F %s?\""          # would be nice for filtered

# hack due to rendering errors in neovim
index-format-hook  thrd "~A" "🧡  "
index-format-hook  date  "~d<1d"    "%[%H:%M] " # 05:51_ (6 chars)
index-format-hook  date  "~d<1m"    "%[%a %d]"  # Wed 28 (6 chars)
index-format-hook  date  "~d<1y"    "%[%b %d]"  # Jun 17 (6 chars)
#index-format-hook  date  "~A"       "%[%m/%y] " # 07/19_ (6 chars)
index-format-hook  date  "~A"       " %[%Y] "   # _2014_ (6 chars)

# other RC files should define more of these BEFORE this one is defined
# this is a catch-all
index-format-hook  attn  "~A" "  "

index-format-hook  flag  "~F" "πŸ”Ά"
#index-format-hook  flag  "~A" "  "
#β˜…πŸŒˆ     🌟A      πŸŒ πŸ”΅πŸ”΄πŸŸ πŸŸ‘πŸŸ’πŸŸ£πŸŸ€πŸŸ¦πŸŸ₯🟧🟨🟩πŸŸͺπŸŸ«πŸ›‘πŸ”·πŸ”ΆπŸ”ΈπŸ”ΉπŸ”ΊπŸ”»πŸš©

# other ideas for thread glyph: πŸŽ‹πŸŒ³πŸŒ²πŸŒ΅πŸ§΅πŸͺ‘  🌱
# attachment glyph: πŸ“Ž  

folder-hook . exec collapse-all        # collapse threads by default
unset help                             # remove help bar

#
## displaying mail: pager
#
set smart_wrap                         # don't break words
set nomarkers                          # to copy urls across multilines
folder-hook . set menu_scroll
ignore *
unignore From:
unignore Subject:
unignore Date:
unignore To:
unignore X-CRM114-Status:
unignore List-Unsubscribe:
unignore Cc:
unignore X-Label:
unhdr_order *
hdr_order From: Subject: Date: To: Cc: X-CRM114-Status: X-DSAFilter-Result: 
List-Unsubscribe:
bind pager x noop

#
## composing mail: prompts
#
set noconfirmappend
set edit_headers

#
## unsorted
#

set followup_to
set honor_followup_to=yes

bind index G last-entry
bind pager G bottom

bind generic ?      search-reverse
bind generic <Esc>? help
bind generic <Esc>/ help

# we may set this to list-reply in mailing list hooks
folder-hook . macro index r <reply>
folder-hook . macro pager r <reply>

#
## destroy smime
#
set crypt_replysign=no
set crypt_replyencrypt=no
# set crypt_verify_sig=no # this also disables GPG

# aliases
source ~/mail/mutt/aliases
set alias_file=~/mail/mutt/aliases

#set attribution="At %{%s} past the epoch, %n wrote:"

# set display_filter="t-prot -cemt -M=mutt --pgp-short"

#set ascii_chars=yes


alternative_order text/calendar text/plain text/html text/*
set implicit_autoview

# steve's sendmail wrapper for attachments
#set sendmail="/home/jon/bin/mutt-sendmail"

# http://lists.debian.org/20121128193148.ga5...@jwilk.net
set encode_from=yes

# temporarily disabled, using a mutt w/o that patch
#set header_cache = /home/jon/.mutt/hcache

bind pager J next-unread

set text_flowed=yes

auto_view text/html text/calendar application/ics

# don't confirm recipient address before launching editor
set fast_reply
# always quote body of mail we're replying to
set include

set abort_noattach = ask-yes
color normal white default
color index brightwhite default "~N"   # indicate new messages in bold
color index brightwhite default "~O"   #  "   "
color index black yellow "~T"          # tagged messages in yellow
color index brightyellow default "~F"    # flagged messages in magenta
color index brightblue default "~h UNSURE"
color index red default "~D"           # deleted messages in red

Reply via email to