[neomutt-users] index position changes unexpectedly

Joseph Graham joseph at xylon.me.uk
Tue Jun 23 08:24:45 CEST 2020


I've noticed this behaviour since building new version. However for me
sometimes it happens even when I didn't limit the view.

On Sat, Jun 20, 2020 at 03:09:35PM -0700, Brian Parent wrote:
> I just installed the latest neomutt release (20200619-163-9014e6), and observed the same behavior.
> 
> Re:
> > From: Brian Parent <bparent at ucsd.edu>
> > Date: Fri, 5 Jun 2020 16:48:03 -0700
> > Subject: index position changes unexpectedly
> > To: neomutt-users at neomutt.org
> > 
> > When going from an open message, back to the index, normally, the position in the index is that same message that was previously open.
> > However, if the index is limited (!~D ~r1/4-), AND if a new message arrives before going back to the index, the position in the index jumps to the first unread message in the limit.
> > 
> > This might be related to issue# 2223, but setting "check_new=no" doesn't help.  Nor does setting "check_mail=0".
> > 
> > The problem is reliably repeatable.
> > 
> > The problem began after I upgraded from 20180716 to NeoMutt 20200501-56-58e35d.
> > 
> > The neomutt -d5 output doesn't appear to be very helpful, at least not to me.
> > 
> > neomutt -d5 output, annotated...
> > 
> > Up to this point, I've limited the messages with "limit !~D ~r1/4-",
> > and opened a message to read so my display includes a few index lines, and a message below that,
> > 
> > Then a new message arrives, and the following debug output appears
> > 
> > 	[2020-06-05 16:13:06]<2> mutt_socket_write_d() 7> a0016 NOOP
> > 	[2020-06-05 16:13:06]<5> mutt_socket_readln_d() 7< * 3058 EXISTS
> > 	[2020-06-05 16:13:06]<2> cmd_parse_exists() Handling EXISTS
> > 	[2020-06-05 16:13:06]<2> cmd_parse_exists() New mail in INBOX - 3058 messages total
> > 	[2020-06-05 16:13:06]<5> mutt_socket_readln_d() 7< a0016 OK Success
> > 	[2020-06-05 16:13:06]<3> imap_cmd_step() IMAP queue drained
> > 	[2020-06-05 16:13:06]<2> imap_cmd_finish() Fetching new mails from 3058 to 3058
> > 	[2020-06-05 16:13:06]<3> mutt_buffer_mktemp_full() imap/message.c:1096: mutt_mktemp returns "/Users/bparent/tmp/neomutt-ucsd-502-29590-14225133563637335574"
> > 	[2020-06-05 16:13:06]<4> mutt_progress_update() updating progress: 0
> > 	[2020-06-05 16:13:06]<2> mutt_socket_write_d() 7> a0017 FETCH 3058:3058 (UID FLAGS INTERNALDATE RFC822.SIZE BODY.PEEK[HEADER.FIELDS (DATE FROM SENDER SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES LIST-POST X-LABEL X-ORIGINAL-TO)])
> > 	[2020-06-05 16:13:06]<4> mutt_progress_update() updating progress: 3058
> > 	[2020-06-05 16:13:06]<5> mutt_socket_readln_d() 7< * 3058 FETCH (UID 179062 RFC822.SIZE 6818 INTERNALDATE "05-Jun-2020 23:12:56 +0000" FLAGS () BODY[HEADER.FIELDS (DATE FROM SENDER SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES LIST-POST X-LABEL X-ORIGINAL-TO)] {295}
> > 	[2020-06-05 16:13:06]<3> cmd_parse_fetch() Handling FETCH
> > 	[2020-06-05 16:13:06]<3> cmd_parse_fetch() Skipping FETCH response - MSN 3058 out of range
> > 	[2020-06-05 16:13:06]<2> imap_read_literal() reading 295 bytes
> > 	[2020-06-05 16:13:06]<3> imap_read_literal() 
> > 	From: Brian Parent <bparentx at gmail.com>
> > 	Date: Fri, 5 Jun 2020 16:12:42 -0700
> > 	Message-ID: <CA+SVfxv3N_OP6MNBj4V1fCv9hUj+n-tBvMYavfu_iCekS3B2Qw at mail.gmail.com>
> > 	Subject: test 7
> > 	To: Brian Parent <bparent at ucsd.edu>
> > 	Content-Type: multipart/alternative; boundary="000000000000a1aaa705a75e6636"
> > 
> > 	[2020-06-05 16:13:06]<5> mutt_socket_readln_d() 7< )
> > 	[2020-06-05 16:13:06]<2> parse_parameters() 'boundary="000000000000a1aaa705a75e6636"'
> > 	[2020-06-05 16:13:06]<2> parse_parameters() parse_parameter: 'boundary' = '000000000000a1aaa705a75e6636'
> > 	[2020-06-05 16:13:06]<5> mutt_socket_readln_d() 7< a0017 OK Success
> > 	[2020-06-05 16:13:06]<3> imap_cmd_step() IMAP queue drained
> > 	[2020-06-05 16:13:06]<M> mutt_sort_headers() Sorting mailbox...
> > 	[2020-06-05 16:13:06]<M> mutt_pager() New mail in this mailbox
> > 	[2020-06-05 16:13:21]<2> mutt_socket_write_d() 7> a0018 NOOP
> > 	[2020-06-05 16:13:21]<5> mutt_socket_readln_d() 7< a0018 OK Success
> > 	[2020-06-05 16:13:21]<3> imap_cmd_step() IMAP queue drained
> > 
> > This is the point after neomutt notifies me of new mail, and I leave the open message to go back to the index,
> > and the index is positioned at the first unread message in the limited index display, instead of the message that
> > was just closed.
> > 
> > 	[2020-06-05 16:13:33]<1> mutt_pager() Got op OP_EXIT (100)
> > 	[2020-06-05 16:13:33]<2> mutt_window_reflow() entering
> > 	[2020-06-05 16:13:33]<M> mutt_sort_headers() Sorting mailbox...
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() #3 yes, bparent at ucsd.edu = bparent @ ucsd.edu
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() #3 yes, bparent at ucsd.edu = bparent @ ucsd.edu
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() #3 yes, bparent at ucsd.edu = bparent @ ucsd.edu
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	[2020-06-05 16:13:33]<5> mutt_addr_is_user() no, all failed
> > 	...
> > 
> > 
> > 
> > 	[calvin bparent ~] [16:13]: neomutt -v
> > 	NeoMutt 20200501-56-58e35d
> > 	Copyright (C) 1996-2016 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: Darwin 19.5.0 (x86_64)
> > 	ncurses: ncurses 6.2.20200212 (compiled with 6.2.20200212)
> > 	libiconv: 1.16
> > 	libidn: 1.35 (compiled with 1.35)
> > 	GPGME: 1.13.1-unknown
> > 	GnuTLS: 3.6.13
> > 	storage: kyotocabinet
> > 
> > 	Configure options: --gnutls --gpgme --gss --sasl --kyotocabinet --disable-doc --prefix=/opt/local
> > 
> > 	Compilation CFLAGS: -g -O2 -std=c99 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__ -I/opt/local/include -DNCURSES_WIDECHAR
> > 
> > 	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 -lz4 +meta -mixmaster +nls -notmuch -openssl +pgp +regex 
> > 	  +sasl +smime -sqlite +start_color +sun_attachment +typeahead -zlib -zstd 
> > 	MAILPATH="/var/mail"
> > 	PKGDATADIR="/opt/local/share/neomutt"
> > 	SENDMAIL="/usr/sbin/sendmail"
> > 	SYSCONFDIR="/opt/local/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-devel at neomutt.org>
> > 
> 
> -- 
> Brian Parent
> Information Technology Services Department
> IT Infrastructure Operations Group
> Workplace, Internal, Research, and Educational Platforms (WIRE) team
> UC San Diego
> (858) 534-6090

-- 
Joseph Graham; a tech-rights advocate from England.

My PGP key: 0x8cd7227da467d3ed404f6eefdb590f739e5ac458

I have three blogs:
  - my blog about the ethics of technology: http://www.technologicallyadvancedhuman.uk
  - my blog about computing and electronics: http://www.naughtycomputer.uk/
  - my blog about scooters and cafe reviews: http://cafereview.xylon.me.uk
I write software: https://www.suckmore.uk/
I run a public Taskenizer installation: https://taskenizer.xylon.me.uk


More information about the neomutt-users mailing list