GNU bug report logs - #31739
25.2; Cannot expire articles in virtual group

Previous Next

Package: emacs;

Reported by: Jamie Forth <j.forth <at> gold.ac.uk>

Date: Wed, 6 Jun 2018 20:40:01 UTC

Severity: normal

Tags: moreinfo, unreproducible

Found in version 25.2

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 31739 in the body.
You can then email your comments to 31739 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Wed, 06 Jun 2018 20:40:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jamie Forth <j.forth <at> gold.ac.uk>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 06 Jun 2018 20:40:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <j.forth <at> gold.ac.uk>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.2; Cannot expire articles in virtual group
Date: Wed, 06 Jun 2018 19:07:35 +0100
Hi,

Expiring articles within a non-virtual group works as expected, but not
within a virtual group.

1. Create a new virtual group (G V)
2. Select and add a component group (G v)
3. Enter the new virtual group and mark a message as expirable (E)
4. Quit the group (or B e) to trigger the expiry process results in
   the following messages

Expiring articles...
Expiring articles in <component group>...done
Expiring articles...done

5. Re-enter the virtual group (or C-u M-g), and find that the article
   previously marked as expirable has not been expired.

I’m using nnimap groups and `nnmail-expiry-wait` is set to immediate.

Setting `expiry-wait` and `expiry-target` nnvirtual group parameters
does not seem to have any effect.

Thanks,
Jamie


In GNU Emacs 25.2.2 (x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
 of 2018-05-07, modified by Debian built on binet
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description:	Debian GNU/Linux testing (buster)

Configured using:
 'configure --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.2/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --build x86_64-linux-gnu
 --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.2/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-x=yes --with-x-toolkit=gtk3
 --with-toolkit-scroll-bars 'CFLAGS=-g -O2
 -fdebug-prefix-map=/build/emacs25-NE1ko4/emacs25-25.2+1=. -fstack-protector-strong
 -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
 -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

Important settings:
  value of $LC_MONETARY: en_GB.UTF-8
  value of $LC_NUMERIC: en_GB.UTF-8
  value of $LC_TIME: en_GB.UTF-8
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Summary

Minor modes in effect:
  recentf-mode: t
  pyvenv-mode: t
  diff-auto-refine-mode: t
  async-bytecomp-package-mode: t
  typo-global-mode: t
  intero-global-mode: t
  shell-dirtrack-mode: t
  global-company-mode: t
  company-mode: t
  global-flycheck-mode: t
  pdf-occur-global-minor-mode: t
  show-paren-mode: t
  ivy-mode: t
  override-global-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-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
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Expiring articles in nnimap+gold-staff:INBOX...done
Expiring articles in nnimap+gold-staff:Sent Items...done
Expiring articles...done
previous-line: Beginning of buffer [2 times]
nnimap read 0k from gold-staff
Finding sort keys...
Sorting records...
Reordering buffer... Done
No more unseen articles
Auto-saving...

Load-path shadows:
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mouse hides /home/jamie/.emacs.d/elpa/org-20180604/org-mouse
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-calc hides /home/jamie/.emacs.d/elpa/org-20180604/ob-calc
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sql hides /home/jamie/.emacs.d/elpa/org-20180604/ob-sql
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-element hides /home/jamie/.emacs.d/elpa/org-20180604/org-element
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-comint hides /home/jamie/.emacs.d/elpa/org-20180604/ob-comint
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-octave hides /home/jamie/.emacs.d/elpa/org-20180604/ob-octave
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-makefile hides /home/jamie/.emacs.d/elpa/org-20180604/ob-makefile
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org hides /home/jamie/.emacs.d/elpa/org-20180604/org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-J hides /home/jamie/.emacs.d/elpa/org-20180604/ob-J
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-clock hides /home/jamie/.emacs.d/elpa/org-20180604/org-clock
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-agenda hides /home/jamie/.emacs.d/elpa/org-20180604/org-agenda
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-abc hides /home/jamie/.emacs.d/elpa/org-20180604/ob-abc
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-python hides /home/jamie/.emacs.d/elpa/org-20180604/ob-python
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-beamer hides /home/jamie/.emacs.d/elpa/org-20180604/ox-beamer
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-emacs-lisp hides /home/jamie/.emacs.d/elpa/org-20180604/ob-emacs-lisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-java hides /home/jamie/.emacs.d/elpa/org-20180604/ob-java
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mobile hides /home/jamie/.emacs.d/elpa/org-20180604/org-mobile
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lob hides /home/jamie/.emacs.d/elpa/org-20180604/ob-lob
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-archive hides /home/jamie/.emacs.d/elpa/org-20180604/org-archive
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-man hides /home/jamie/.emacs.d/elpa/org-20180604/ox-man
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-picolisp hides /home/jamie/.emacs.d/elpa/org-20180604/ob-picolisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob hides /home/jamie/.emacs.d/elpa/org-20180604/ob
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-publish hides /home/jamie/.emacs.d/elpa/org-20180604/ox-publish
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-timer hides /home/jamie/.emacs.d/elpa/org-20180604/org-timer
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lisp hides /home/jamie/.emacs.d/elpa/org-20180604/ob-lisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lilypond hides /home/jamie/.emacs.d/elpa/org-20180604/ob-lilypond
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-mscgen hides /home/jamie/.emacs.d/elpa/org-20180604/ob-mscgen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sass hides /home/jamie/.emacs.d/elpa/org-20180604/ob-sass
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-install hides /home/jamie/.emacs.d/elpa/org-20180604/org-install
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ocaml hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ocaml
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-odt hides /home/jamie/.emacs.d/elpa/org-20180604/ox-odt
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-ascii hides /home/jamie/.emacs.d/elpa/org-20180604/ox-ascii
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-shell hides /home/jamie/.emacs.d/elpa/org-20180604/ob-shell
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-io hides /home/jamie/.emacs.d/elpa/org-20180604/ob-io
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-haskell hides /home/jamie/.emacs.d/elpa/org-20180604/ob-haskell
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-id hides /home/jamie/.emacs.d/elpa/org-20180604/org-id
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-duration hides /home/jamie/.emacs.d/elpa/org-20180604/org-duration
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-rmail hides /home/jamie/.emacs.d/elpa/org-20180604/org-rmail
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-html hides /home/jamie/.emacs.d/elpa/org-20180604/ox-html
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-attach hides /home/jamie/.emacs.d/elpa/org-20180604/org-attach
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-protocol hides /home/jamie/.emacs.d/elpa/org-20180604/org-protocol
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-exp hides /home/jamie/.emacs.d/elpa/org-20180604/ob-exp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-eww hides /home/jamie/.emacs.d/elpa/org-20180604/org-eww
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-css hides /home/jamie/.emacs.d/elpa/org-20180604/ob-css
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ref hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ref
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-org hides /home/jamie/.emacs.d/elpa/org-20180604/ox-org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-shen hides /home/jamie/.emacs.d/elpa/org-20180604/ob-shen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sed hides /home/jamie/.emacs.d/elpa/org-20180604/ob-sed
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-macs hides /home/jamie/.emacs.d/elpa/org-20180604/org-macs
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-colview hides /home/jamie/.emacs.d/elpa/org-20180604/org-colview
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-plot hides /home/jamie/.emacs.d/elpa/org-20180604/org-plot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-dot hides /home/jamie/.emacs.d/elpa/org-20180604/ob-dot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-latex hides /home/jamie/.emacs.d/elpa/org-20180604/ob-latex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-inlinetask hides /home/jamie/.emacs.d/elpa/org-20180604/org-inlinetask
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-keys hides /home/jamie/.emacs.d/elpa/org-20180604/ob-keys
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-entities hides /home/jamie/.emacs.d/elpa/org-20180604/org-entities
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox hides /home/jamie/.emacs.d/elpa/org-20180604/ox
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mhe hides /home/jamie/.emacs.d/elpa/org-20180604/org-mhe
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-core hides /home/jamie/.emacs.d/elpa/org-20180604/ob-core
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ruby hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ruby
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-tangle hides /home/jamie/.emacs.d/elpa/org-20180604/ob-tangle
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-perl hides /home/jamie/.emacs.d/elpa/org-20180604/ob-perl
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-habit hides /home/jamie/.emacs.d/elpa/org-20180604/org-habit
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-src hides /home/jamie/.emacs.d/elpa/org-20180604/org-src
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-eshell hides /home/jamie/.emacs.d/elpa/org-20180604/org-eshell
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-C hides /home/jamie/.emacs.d/elpa/org-20180604/ob-C
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-crypt hides /home/jamie/.emacs.d/elpa/org-20180604/org-crypt
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ebnf hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ebnf
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-capture hides /home/jamie/.emacs.d/elpa/org-20180604/org-capture
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-indent hides /home/jamie/.emacs.d/elpa/org-20180604/org-indent
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-datetree hides /home/jamie/.emacs.d/elpa/org-20180604/org-datetree
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ditaa hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ditaa
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-plantuml hides /home/jamie/.emacs.d/elpa/org-20180604/ob-plantuml
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sqlite hides /home/jamie/.emacs.d/elpa/org-20180604/ob-sqlite
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-version hides /home/jamie/.emacs.d/elpa/org-20180604/org-version
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-compat hides /home/jamie/.emacs.d/elpa/org-20180604/org-compat
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-md hides /home/jamie/.emacs.d/elpa/org-20180604/ox-md
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-scheme hides /home/jamie/.emacs.d/elpa/org-20180604/ob-scheme
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-groovy hides /home/jamie/.emacs.d/elpa/org-20180604/ob-groovy
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-icalendar hides /home/jamie/.emacs.d/elpa/org-20180604/ox-icalendar
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-awk hides /home/jamie/.emacs.d/elpa/org-20180604/ob-awk
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-processing hides /home/jamie/.emacs.d/elpa/org-20180604/ob-processing
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-clojure hides /home/jamie/.emacs.d/elpa/org-20180604/ob-clojure
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-table hides /home/jamie/.emacs.d/elpa/org-20180604/ob-table
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-pcomplete hides /home/jamie/.emacs.d/elpa/org-20180604/org-pcomplete
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-matlab hides /home/jamie/.emacs.d/elpa/org-20180604/ob-matlab
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ledger hides /home/jamie/.emacs.d/elpa/org-20180604/ob-ledger
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-stan hides /home/jamie/.emacs.d/elpa/org-20180604/ob-stan
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-texinfo hides /home/jamie/.emacs.d/elpa/org-20180604/ox-texinfo
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-faces hides /home/jamie/.emacs.d/elpa/org-20180604/org-faces
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-bbdb hides /home/jamie/.emacs.d/elpa/org-20180604/org-bbdb
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-asymptote hides /home/jamie/.emacs.d/elpa/org-20180604/ob-asymptote
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-bibtex hides /home/jamie/.emacs.d/elpa/org-20180604/org-bibtex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-feed hides /home/jamie/.emacs.d/elpa/org-20180604/org-feed
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-macro hides /home/jamie/.emacs.d/elpa/org-20180604/org-macro
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-w3m hides /home/jamie/.emacs.d/elpa/org-20180604/org-w3m
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-latex hides /home/jamie/.emacs.d/elpa/org-20180604/ox-latex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-R hides /home/jamie/.emacs.d/elpa/org-20180604/ob-R
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-vala hides /home/jamie/.emacs.d/elpa/org-20180604/ob-vala
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-screen hides /home/jamie/.emacs.d/elpa/org-20180604/ob-screen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-org hides /home/jamie/.emacs.d/elpa/org-20180604/ob-org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-gnuplot hides /home/jamie/.emacs.d/elpa/org-20180604/ob-gnuplot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-info hides /home/jamie/.emacs.d/elpa/org-20180604/org-info
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-fortran hides /home/jamie/.emacs.d/elpa/org-20180604/ob-fortran
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lua hides /home/jamie/.emacs.d/elpa/org-20180604/ob-lua
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-docview hides /home/jamie/.emacs.d/elpa/org-20180604/org-docview
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-hledger hides /home/jamie/.emacs.d/elpa/org-20180604/ob-hledger
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-footnote hides /home/jamie/.emacs.d/elpa/org-20180604/org-footnote
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-irc hides /home/jamie/.emacs.d/elpa/org-20180604/org-irc
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-gnus hides /home/jamie/.emacs.d/elpa/org-20180604/org-gnus
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-coq hides /home/jamie/.emacs.d/elpa/org-20180604/ob-coq
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-list hides /home/jamie/.emacs.d/elpa/org-20180604/org-list
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-js hides /home/jamie/.emacs.d/elpa/org-20180604/ob-js
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-maxima hides /home/jamie/.emacs.d/elpa/org-20180604/ob-maxima
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-table hides /home/jamie/.emacs.d/elpa/org-20180604/org-table
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-forth hides /home/jamie/.emacs.d/elpa/org-20180604/ob-forth
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-lint hides /home/jamie/.emacs.d/elpa/org-20180604/org-lint
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-eval hides /home/jamie/.emacs.d/elpa/org-20180604/ob-eval
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-loaddefs hides /home/jamie/.emacs.d/elpa/org-20180604/org-loaddefs
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-ctags hides /home/jamie/.emacs.d/elpa/org-20180604/org-ctags
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3mhack hides /usr/share/emacs25/site-lisp/w3m/w3mhack
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-image hides /usr/share/emacs25/site-lisp/w3m/w3m-image
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/bookmark-w3m hides /usr/share/emacs25/site-lisp/w3m/bookmark-w3m
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-util hides /usr/share/emacs25/site-lisp/w3m/w3m-util
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-ems hides /usr/share/emacs25/site-lisp/w3m/w3m-ems
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-namazu hides /usr/share/emacs25/site-lisp/w3m/w3m-namazu
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-antenna hides /usr/share/emacs25/site-lisp/w3m/w3m-antenna
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-mail hides /usr/share/emacs25/site-lisp/w3m/w3m-mail
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-save hides /usr/share/emacs25/site-lisp/w3m/w3m-save
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-proc hides /usr/share/emacs25/site-lisp/w3m/w3m-proc
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-cookie hides /usr/share/emacs25/site-lisp/w3m/w3m-cookie
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-dtree hides /usr/share/emacs25/site-lisp/w3m/w3m-dtree
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-session hides /usr/share/emacs25/site-lisp/w3m/w3m-session
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-filter hides /usr/share/emacs25/site-lisp/w3m/w3m-filter
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-fb hides /usr/share/emacs25/site-lisp/w3m/w3m-fb
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-perldoc hides /usr/share/emacs25/site-lisp/w3m/w3m-perldoc
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-ccl hides /usr/share/emacs25/site-lisp/w3m/w3m-ccl
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-symbol hides /usr/share/emacs25/site-lisp/w3m/w3m-symbol
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/mime-w3m hides /usr/share/emacs25/site-lisp/w3m/mime-w3m
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m hides /usr/share/emacs25/site-lisp/w3m/w3m
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-bookmark hides /usr/share/emacs25/site-lisp/w3m/w3m-bookmark
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-weather hides /usr/share/emacs25/site-lisp/w3m/w3m-weather
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-favicon hides /usr/share/emacs25/site-lisp/w3m/w3m-favicon
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-rss hides /usr/share/emacs25/site-lisp/w3m/w3m-rss
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-search hides /usr/share/emacs25/site-lisp/w3m/w3m-search
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-tabmenu hides /usr/share/emacs25/site-lisp/w3m/w3m-tabmenu
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-lnum hides /usr/share/emacs25/site-lisp/w3m/w3m-lnum
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-hist hides /usr/share/emacs25/site-lisp/w3m/w3m-hist
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-form hides /usr/share/emacs25/site-lisp/w3m/w3m-form
/home/jamie/.emacs.d/elpa/w3m-20180404.2220/w3m-bug hides /usr/share/emacs25/site-lisp/w3m/w3m-bug
/usr/share/emacs/25.2/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup
/usr/share/emacs25/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode
/usr/share/emacs25/site-lisp/flim/hex-util hides /usr/share/emacs/25.2/lisp/hex-util
/usr/share/emacs25/site-lisp/flim/md4 hides /usr/share/emacs/25.2/lisp/md4
/usr/share/emacs/site-lisp/rst hides /usr/share/emacs/25.2/lisp/textmodes/rst
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-shen hides /usr/share/emacs/25.2/lisp/org/ob-shen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-dot hides /usr/share/emacs/25.2/lisp/org/ob-dot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-table hides /usr/share/emacs/25.2/lisp/org/ob-table
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-gnus hides /usr/share/emacs/25.2/lisp/org/org-gnus
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ocaml hides /usr/share/emacs/25.2/lisp/org/ob-ocaml
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-emacs-lisp hides /usr/share/emacs/25.2/lisp/org/ob-emacs-lisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-ctags hides /usr/share/emacs/25.2/lisp/org/org-ctags
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-attach hides /usr/share/emacs/25.2/lisp/org/org-attach
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-id hides /usr/share/emacs/25.2/lisp/org/org-id
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-html hides /usr/share/emacs/25.2/lisp/org/ox-html
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-asymptote hides /usr/share/emacs/25.2/lisp/org/ob-asymptote
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-maxima hides /usr/share/emacs/25.2/lisp/org/ob-maxima
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sqlite hides /usr/share/emacs/25.2/lisp/org/ob-sqlite
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-habit hides /usr/share/emacs/25.2/lisp/org/org-habit
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-datetree hides /usr/share/emacs/25.2/lisp/org/org-datetree
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-org hides /usr/share/emacs/25.2/lisp/org/ox-org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-java hides /usr/share/emacs/25.2/lisp/org/ob-java
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-matlab hides /usr/share/emacs/25.2/lisp/org/ob-matlab
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-eval hides /usr/share/emacs/25.2/lisp/org/ob-eval
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-publish hides /usr/share/emacs/25.2/lisp/org/ox-publish
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-irc hides /usr/share/emacs/25.2/lisp/org/org-irc
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lilypond hides /usr/share/emacs/25.2/lisp/org/ob-lilypond
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-entities hides /usr/share/emacs/25.2/lisp/org/org-entities
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-element hides /usr/share/emacs/25.2/lisp/org/org-element
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mouse hides /usr/share/emacs/25.2/lisp/org/org-mouse
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-install hides /usr/share/emacs/25.2/lisp/org/org-install
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-R hides /usr/share/emacs/25.2/lisp/org/ob-R
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mobile hides /usr/share/emacs/25.2/lisp/org/org-mobile
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-icalendar hides /usr/share/emacs/25.2/lisp/org/ox-icalendar
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-feed hides /usr/share/emacs/25.2/lisp/org/org-feed
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-comint hides /usr/share/emacs/25.2/lisp/org/ob-comint
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-list hides /usr/share/emacs/25.2/lisp/org/org-list
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-mhe hides /usr/share/emacs/25.2/lisp/org/org-mhe
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-calc hides /usr/share/emacs/25.2/lisp/org/ob-calc
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-archive hides /usr/share/emacs/25.2/lisp/org/org-archive
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-screen hides /usr/share/emacs/25.2/lisp/org/ob-screen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-table hides /usr/share/emacs/25.2/lisp/org/org-table
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-css hides /usr/share/emacs/25.2/lisp/org/ob-css
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-io hides /usr/share/emacs/25.2/lisp/org/ob-io
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-indent hides /usr/share/emacs/25.2/lisp/org/org-indent
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-exp hides /usr/share/emacs/25.2/lisp/org/ob-exp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-bibtex hides /usr/share/emacs/25.2/lisp/org/org-bibtex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-compat hides /usr/share/emacs/25.2/lisp/org/org-compat
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-perl hides /usr/share/emacs/25.2/lisp/org/ob-perl
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-macs hides /usr/share/emacs/25.2/lisp/org/org-macs
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ruby hides /usr/share/emacs/25.2/lisp/org/ob-ruby
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-haskell hides /usr/share/emacs/25.2/lisp/org/ob-haskell
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-bbdb hides /usr/share/emacs/25.2/lisp/org/org-bbdb
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-clock hides /usr/share/emacs/25.2/lisp/org/org-clock
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-org hides /usr/share/emacs/25.2/lisp/org/ob-org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-picolisp hides /usr/share/emacs/25.2/lisp/org/ob-picolisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox hides /usr/share/emacs/25.2/lisp/org/ox
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-beamer hides /usr/share/emacs/25.2/lisp/org/ox-beamer
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-rmail hides /usr/share/emacs/25.2/lisp/org/org-rmail
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-crypt hides /usr/share/emacs/25.2/lisp/org/org-crypt
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-plantuml hides /usr/share/emacs/25.2/lisp/org/ob-plantuml
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-octave hides /usr/share/emacs/25.2/lisp/org/ob-octave
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-keys hides /usr/share/emacs/25.2/lisp/org/ob-keys
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-js hides /usr/share/emacs/25.2/lisp/org/ob-js
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-awk hides /usr/share/emacs/25.2/lisp/org/ob-awk
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-pcomplete hides /usr/share/emacs/25.2/lisp/org/org-pcomplete
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-info hides /usr/share/emacs/25.2/lisp/org/org-info
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-ascii hides /usr/share/emacs/25.2/lisp/org/ox-ascii
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-makefile hides /usr/share/emacs/25.2/lisp/org/ob-makefile
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org hides /usr/share/emacs/25.2/lisp/org/org
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-plot hides /usr/share/emacs/25.2/lisp/org/org-plot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-agenda hides /usr/share/emacs/25.2/lisp/org/org-agenda
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-eshell hides /usr/share/emacs/25.2/lisp/org/org-eshell
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-loaddefs hides /usr/share/emacs/25.2/lisp/org/org-loaddefs
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-md hides /usr/share/emacs/25.2/lisp/org/ox-md
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-w3m hides /usr/share/emacs/25.2/lisp/org/org-w3m
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-capture hides /usr/share/emacs/25.2/lisp/org/org-capture
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-latex hides /usr/share/emacs/25.2/lisp/org/ox-latex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lob hides /usr/share/emacs/25.2/lisp/org/ob-lob
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ledger hides /usr/share/emacs/25.2/lisp/org/ob-ledger
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sql hides /usr/share/emacs/25.2/lisp/org/ob-sql
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-mscgen hides /usr/share/emacs/25.2/lisp/org/ob-mscgen
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob hides /usr/share/emacs/25.2/lisp/org/ob
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-python hides /usr/share/emacs/25.2/lisp/org/ob-python
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-texinfo hides /usr/share/emacs/25.2/lisp/org/ox-texinfo
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-core hides /usr/share/emacs/25.2/lisp/org/ob-core
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-sass hides /usr/share/emacs/25.2/lisp/org/ob-sass
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ditaa hides /usr/share/emacs/25.2/lisp/org/ob-ditaa
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-fortran hides /usr/share/emacs/25.2/lisp/org/ob-fortran
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-odt hides /usr/share/emacs/25.2/lisp/org/ox-odt
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-scheme hides /usr/share/emacs/25.2/lisp/org/ob-scheme
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-timer hides /usr/share/emacs/25.2/lisp/org/org-timer
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-clojure hides /usr/share/emacs/25.2/lisp/org/ob-clojure
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-faces hides /usr/share/emacs/25.2/lisp/org/org-faces
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-protocol hides /usr/share/emacs/25.2/lisp/org/org-protocol
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-tangle hides /usr/share/emacs/25.2/lisp/org/ob-tangle
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-latex hides /usr/share/emacs/25.2/lisp/org/ob-latex
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-docview hides /usr/share/emacs/25.2/lisp/org/org-docview
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-macro hides /usr/share/emacs/25.2/lisp/org/org-macro
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ox-man hides /usr/share/emacs/25.2/lisp/org/ox-man
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-gnuplot hides /usr/share/emacs/25.2/lisp/org/ob-gnuplot
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-colview hides /usr/share/emacs/25.2/lisp/org/org-colview
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-src hides /usr/share/emacs/25.2/lisp/org/org-src
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-inlinetask hides /usr/share/emacs/25.2/lisp/org/org-inlinetask
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-footnote hides /usr/share/emacs/25.2/lisp/org/org-footnote
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-lisp hides /usr/share/emacs/25.2/lisp/org/ob-lisp
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-ref hides /usr/share/emacs/25.2/lisp/org/ob-ref
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/ob-C hides /usr/share/emacs/25.2/lisp/org/ob-C
/home/jamie/.emacs.d/elpa/org-plus-contrib-20180604/org-version hides /usr/share/emacs/25.2/lisp/org/org-version
/usr/share/emacs25/site-lisp/flim/ntlm hides /usr/share/emacs/25.2/lisp/net/ntlm
/usr/share/emacs25/site-lisp/flim/sasl-ntlm hides /usr/share/emacs/25.2/lisp/net/sasl-ntlm
/usr/share/emacs25/site-lisp/flim/sasl-cram hides /usr/share/emacs/25.2/lisp/net/sasl-cram
/usr/share/emacs25/site-lisp/flim/hmac-def hides /usr/share/emacs/25.2/lisp/net/hmac-def
/usr/share/emacs25/site-lisp/flim/hmac-md5 hides /usr/share/emacs/25.2/lisp/net/hmac-md5
/usr/share/emacs25/site-lisp/flim/sasl hides /usr/share/emacs/25.2/lisp/net/sasl
/usr/share/emacs25/site-lisp/flim/sasl-digest hides /usr/share/emacs/25.2/lisp/net/sasl-digest
/home/jamie/.emacs.d/elpa/let-alist-1.0.5/let-alist hides /usr/share/emacs/25.2/lisp/emacs-lisp/let-alist
/home/jamie/.emacs.d/elpa/seq-2.20/seq hides /usr/share/emacs/25.2/lisp/emacs-lisp/seq

Features:
(shadow org-table footnote emacsbug gnus-cite gnus-html url-cache mm-url
mm-archive mail-extr gnus-bcklg qp gnus-async sort gnus-ml disp-table
recentf gnus-cus gnus-topic nndraft nnmh gnus-agent gnus-srvr gnus-score
score-mode nnvirtual gnus-msg utf-7 network-stream nsm starttls
gnus-cache nnnil nntp smtpmail sendmail colir color counsel swiper
server cap-words superword subword company-oddmuse company-keywords
company-etags company-gtags company-dabbrev-code company-dabbrev
company-files company-capf company-cmake company-xcode company-clang
company-semantic company-eclim company-template company-css company-nxml
company-bbdb py-autopep8 yasnippet highlight-indentation flymake elpy
find-file-in-project elpy-shell pyvenv esh-var esh-io esh-cmd esh-opt
esh-ext esh-proc esh-arg esh-groups eshell esh-module esh-mode esh-util
elpy-profile elpy-django elpy-refactor grep files-x ox-extra vc-git
diff-mode org-eldoc cdlatex texmathp flyspell ispell ws-butler org-rmail
org-mhe org-irc org-info org-gnus nnir org-docview doc-view org-bbdb
org-w3m org-archive org-id org-ref org-ref-helm-bibtex org-ref-helm
helm-utils helm-bibtex bibtex-completion filenotify biblio
biblio-download biblio-dissemin biblio-hal biblio-dblp biblio-crossref
biblio-arxiv timezone biblio-doi biblio-core url-queue ido hl-line
helm-net browse-url helm-help helm helm-source helm-multi-match helm-lib
helm-config helm-easymenu async-bytecomp async org-ref-core reftex-cite
reftex reftex-vars parsebib org-ref-glossary org-ref-bibtex
org-ref-citeproc key-chord hydra lv doi-utils org-ref-utils org-ref-pdf
url-http url-auth url-gw htmlize ox-reveal ox-md org-bibtex-extras
org-bibtex bibtex ox-bibtex org-mobile org-contacts org-clock org-habit
org-agenda ox-org ox-beamer ox-odt rng-loc rng-uri rng-parse rng-match
rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util
ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox ob-js
ob-shell ob-ein ein-notebook eieio-opt speedbar sb-image ezimage dframe
ein-junk ein-shared-output ein-inspector ein-traceback ein-pytools
ein-pseudo-console ein-pager ein-completer ein-subpackages
ein-notification ein-scratchsheet ein-iexec ein-worksheet ein-kill-ring
ein-cell-output ein-cell-edit ein-cell ein-hy ein-skewer skewer-mode
cache-table js2-mode etags xref project js sgml-mode moz simple-httpd
ein-output-area xml ein-kernelinfo ein-kernel ein-ipdb ein-events
ein-websocket websocket bindat ein-contents-api ein-query
request-deferred deferred request url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util ein-node ein-log
ein-console ein-classes ein-core ein-utils cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ein ewoc
ob-ipython python tramp-sh f dash-functional ob-python ob-plantuml
ob-sql ob-R ob-haskell ob-lisp ob-lilypond ob-http ob-http-mode s
ob-ditaa ob-awk typo flycheck-yamllint use-package-ensure intero tramp
tramp-compat tramp-loaddefs trampver ucs-normalize shell company
warnings flycheck json map dash gnus-icalendar org-capture org-element
avl-tree org org-macro org-footnote org-pcomplete pcomplete org-list
org-faces org-entities noutline outline org-version ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs eieio-compat gnus-art
mm-uu mml2015 mm-view mml-smime smime dig mailcap gnus-sum gnus-group
gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls
utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message rfc822
mml mml-sec epg mailabbrev mailheader gnus-win gnus gnus-ems nnheader
mail-utils mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 ietf-drums gmm-utils icalendar diary-lib diary-loaddefs cal-menu
calendar cal-loaddefs pdf-occur ibuf-ext ibuffer tablist tablist-filter
semantic/wisent/comp semantic/wisent semantic/wisent/wisent
semantic/util-modes semantic/util semantic semantic/tag semantic/lex
semantic/fw mode-local find-func cedet dired pdf-isearch let-alist
pdf-misc imenu pdf-tools compile comint ansi-color cus-edit cus-start
cus-load pdf-view bookmark pp jka-compr pdf-cache pdf-info tq pdf-util
advice format-spec image-mode paren windmove edmacro kmacro ivy delsel
ivy-overlay ffap thingatpt url-parse auth-source eieio eieio-core
gnus-util time-date mm-util help-fns mail-prsvr password-cache url-vars
use-package-bind-key bind-key cl-seq use-package-core subr-x
material-theme finder-inf tex-site cl-macs rx info package epg-config
seq byte-opt bytecomp byte-compile cl-extra help-mode cconv w3m-load
sclang sclang-widgets tree-widget wid-edit sclang-server sclang-help
sclang-vars sclang-help-minor-mode sclang-minor-mode easy-mmode
sclang-mode easymenu sclang-dev sclang-document sclang-language ring
sclang-interp sclang-browser view sclang-util cl gv cl-loaddefs pcase
cl-lib mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset
image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cl-generic cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese charscript case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote dbusbind inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 931849 79138)
 (symbols 48 76554 3)
 (miscs 40 11435 5506)
 (strings 32 212881 20890)
 (string-bytes 1 7006230)
 (vectors 16 106994)
 (vector-slots 8 1625219 38570)
 (floats 8 1656 690)
 (intervals 56 5452 171)
 (buffers 976 53))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Sun, 29 Sep 2019 08:22:01 GMT) Full text and rfc822 format available.

Message #8 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <j.forth <at> gold.ac.uk>
Cc: 31739 <at> debbugs.gnu.org
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Sun, 29 Sep 2019 10:21:38 +0200
Jamie Forth <j.forth <at> gold.ac.uk> writes:

> Expiring articles within a non-virtual group works as expected, but not
> within a virtual group.
>
> 1. Create a new virtual group (G V)
> 2. Select and add a component group (G v)
> 3. Enter the new virtual group and mark a message as expirable (E)
> 4. Quit the group (or B e) to trigger the expiry process results in
>    the following messages
>
> Expiring articles...
> Expiring articles in <component group>...done
> Expiring articles...done
>
> 5. Re-enter the virtual group (or C-u M-g), and find that the article
>    previously marked as expirable has not been expired.
>
> I’m using nnimap groups and `nnmail-expiry-wait` is set to immediate.

I'm unable to reproduce this in Emacs 27.  If I follow your recipe
(create a virtual group with an nnimap component, and mark an article in
the virtual group with `E'), the IMAP log shows:

10:19:12 [quimby.gnus.org] 7219 SELECT "spam"
10:19:12 [quimby.gnus.org] 7220 UID STORE 392789 +FLAGS.SILENT (\Deleted)
10:19:12 [quimby.gnus.org] 7221 UID EXPUNGE 392789

So the message was deleted from the nnimap component group.

Are you still seeing this bug in newer Emacs versions?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 29 Sep 2019 08:22:02 GMT) Full text and rfc822 format available.

Added tag(s) unreproducible. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 29 Sep 2019 08:22:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Mon, 30 Sep 2019 17:01:01 GMT) Full text and rfc822 format available.

Message #15 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Mon, 30 Sep 2019 17:00:40 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Jamie Forth <j.forth <at> gold.ac.uk> writes:
>
>> Expiring articles within a non-virtual group works as expected, but not
>> within a virtual group.
>>
>> 1. Create a new virtual group (G V)
>> 2. Select and add a component group (G v)
>> 3. Enter the new virtual group and mark a message as expirable (E)
>> 4. Quit the group (or B e) to trigger the expiry process results in
>>    the following messages
>>
>> Expiring articles...
>> Expiring articles in <component group>...done
>> Expiring articles...done
>>
>> 5. Re-enter the virtual group (or C-u M-g), and find that the article
>>    previously marked as expirable has not been expired.
>>
>> I’m using nnimap groups and `nnmail-expiry-wait` is set to immediate.
>
> I'm unable to reproduce this in Emacs 27.  If I follow your recipe
> (create a virtual group with an nnimap component, and mark an article in
> the virtual group with `E'), the IMAP log shows:
>
> 10:19:12 [quimby.gnus.org] 7219 SELECT "spam"
> 10:19:12 [quimby.gnus.org] 7220 UID STORE 392789 +FLAGS.SILENT (\Deleted)
> 10:19:12 [quimby.gnus.org] 7221 UID EXPUNGE 392789
>
> So the message was deleted from the nnimap component group.
>
> Are you still seeing this bug in newer Emacs versions?

Thanks for looking into it, I still experience the issue with Emacs
27.0.50.

My setup is fairly minimal. This is how imap is configured.

(add-to-list
 'gnus-secondary-select-methods
 '(nnimap "gold"
          (nnimap-stream shell)
          (nnimap-shell-program
           "/usr/lib/dovecot/imap -c ~/.config/dovecot/gold.conf  2> /dev/null")
          (nnir-search-engine imap)
          (nnmail-expiry-target "nnimap+gold:Deleted Items")
          (nnmail-expiry-wait immediate)))

I’m not quite sure how to debug this, but if you have any suggestion
I’ll give them a try.

--
Jamie

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Tue, 01 Oct 2019 12:26:02 GMT) Full text and rfc822 format available.

Message #18 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Tue, 01 Oct 2019 14:25:05 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

>> 10:19:12 [quimby.gnus.org] 7219 SELECT "spam"
>> 10:19:12 [quimby.gnus.org] 7220 UID STORE 392789 +FLAGS.SILENT (\Deleted)
>> 10:19:12 [quimby.gnus.org] 7221 UID EXPUNGE 392789
>>
>> So the message was deleted from the nnimap component group.
>>
>> Are you still seeing this bug in newer Emacs versions?
>
> Thanks for looking into it, I still experience the issue with Emacs
> 27.0.50.

By "the issue", do you mean that messages in INBOX aren't expunged after
splitting mail?

> My setup is fairly minimal. This is how imap is configured.
>
> (add-to-list
>  'gnus-secondary-select-methods
>  '(nnimap "gold"
>           (nnimap-stream shell)
>           (nnimap-shell-program
>            "/usr/lib/dovecot/imap -c ~/.config/dovecot/gold.conf  2> /dev/null")
>           (nnir-search-engine imap)
>           (nnmail-expiry-target "nnimap+gold:Deleted Items")
>           (nnmail-expiry-wait immediate)))
>
> I’m not quite sure how to debug this, but if you have any suggestion
> I’ll give them a try.

(setq nnimap-record-commands t)

and look in the "*imap log*" buffer after splitting, and post the
relevant bits here.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Tue, 01 Oct 2019 12:28:02 GMT) Full text and rfc822 format available.

Message #21 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Tue, 01 Oct 2019 14:27:41 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

> Thanks for looking into it, I still experience the issue with Emacs
> 27.0.50.

Sorry; I was thinking about a different bug nnimap expiration bug, not
the nnvirtual one.

To debug, mark a message in the nnvirtual group as expirable, exit the
group, and look in the *imap log* buffer and see what's there.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Tue, 01 Oct 2019 14:09:02 GMT) Full text and rfc822 format available.

Message #24 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Tue, 1 Oct 2019 14:08:44 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Jamie Forth <J.Forth <at> gold.ac.uk> writes:
>
> To debug, mark a message in the nnvirtual group as expirable, exit the
> group, and look in the *imap log* buffer and see what's there.

14:34:43 [gold] 3562 SELECT "Junk Email"
14:34:43 [gold] 3563 UID STORE 34 +FLAGS.SILENT (\Seen)

Hm, so no \Deleted.

Doing the same in a normal group:

14:40:03 [gold] 3787 SELECT "Junk Email"
14:40:03 [gold] 3788 SELECT "Junk Email"
14:40:03 [gold] 3789 UID MOVE 31 "Deleted Items"
14:40:03 [gold] 3790 SELECT "Junk Email"
14:40:03 [gold] 3791 SELECT "Junk Email"
14:40:03 [gold] 3792 UID STORE 31 +FLAGS.SILENT (\Seen)

OK, so I’m moving rather than deleting, this makes sense because I have
(nnmail-expiry-target "nnimap+gold:Deleted Items").

Setting nnmail-expiry-target back to the default I now see:

14:55:11 [gold] 188 SELECT "Junk Email"
14:55:11 [gold] 189 UID STORE 25 +FLAGS.SILENT (\Deleted)
14:55:11 [gold] 190 UID EXPUNGE 25
14:55:11 [gold] 191 SELECT "Junk Email"
14:55:11 [gold] 192 UID STORE 25 +FLAGS.SILENT (\Seen)

But no difference when expiring within the virtual group.

14:55:57 [gold] 196 SELECT "Junk Email"
14:55:57 [gold] 197 UID STORE 22 +FLAGS.SILENT (\Seen)

--
Jamie

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Thu, 03 Oct 2019 15:52:02 GMT) Full text and rfc822 format available.

Message #27 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Thu, 03 Oct 2019 17:51:10 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

> Setting nnmail-expiry-target back to the default I now see:
>
> 14:55:11 [gold] 188 SELECT "Junk Email"
> 14:55:11 [gold] 189 UID STORE 25 +FLAGS.SILENT (\Deleted)
> 14:55:11 [gold] 190 UID EXPUNGE 25
> 14:55:11 [gold] 191 SELECT "Junk Email"
> 14:55:11 [gold] 192 UID STORE 25 +FLAGS.SILENT (\Seen)
>
> But no difference when expiring within the virtual group.
>
> 14:55:57 [gold] 196 SELECT "Junk Email"
> 14:55:57 [gold] 197 UID STORE 22 +FLAGS.SILENT (\Seen)

It does seem like the nnimap expiration function isn't being called at
all, somehow.

Would it be possible for you do open nnvirtual.el and `M-x edebug-defun'
on `nnvirtual-request-expire-articles' and then step through the
function when exiting from the nnvirtual group (with some articles
marked as expirable)?

What's interesting here is whether the

  (gnus-group-expire-articles-1 group)

form is being executed for the nnimap group.  

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Fri, 04 Oct 2019 18:35:02 GMT) Full text and rfc822 format available.

Message #30 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Fri, 4 Oct 2019 18:34:20 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> It does seem like the nnimap expiration function isn't being called at
> all, somehow.
>
> Would it be possible for you do open nnvirtual.el and `M-x edebug-defun'
> on `nnvirtual-request-expire-articles' and then step through the
> function when exiting from the nnvirtual group (with some articles
> marked as expirable)?
>
> What's interesting here is whether the
>
>   (gnus-group-expire-articles-1 group)
>
> form is being executed for the nnimap group.  

gnus-group-expire-articles-1 is being called.

Stepping through gnus-group-expire-articles-1, 
expirable is nil.

The value returned from (gnus-info-marks info) is:

  ((seen (22 . 40)) (unexist (1 . 34)))

So the expirable marks are getting dropped somehow?

--
Jamie




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Mon, 07 Oct 2019 03:18:02 GMT) Full text and rfc822 format available.

Message #33 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Mon, 07 Oct 2019 05:16:50 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

> Stepping through gnus-group-expire-articles-1, 
> expirable is nil.
>
> The value returned from (gnus-info-marks info) is:
>
>   ((seen (22 . 40)) (unexist (1 . 34)))
>
> So the expirable marks are getting dropped somehow?

Sounds like it.

For my test group, I get:

(assq 'expire (gnus-info-marks (gnus-get-info "nnvirtual:imap-test")))
=> (expire 392790 394237)

You get nil for yours?

I've looked through the code for something special being done with the
expirable marks, and I can't find anything that's nixing out those in
particular.  But I may be looking in the wrong parts of the code...

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Mon, 07 Oct 2019 16:19:02 GMT) Full text and rfc822 format available.

Message #36 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Mon, 7 Oct 2019 16:18:13 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> For my test group, I get:
>
> (assq 'expire (gnus-info-marks (gnus-get-info "nnvirtual:imap-test")))
> => (expire 392790 394237)
>
> You get nil for yours?

Yes unfortunately.

(gnus-info-marks (gnus-get-info "nnvirtual:vgtest")

=> ((unexist (1 . 34) (37 . 40)) (seen (22 . 40)))

As a sanity check I just tried recreating the group with `emacs -Q` and
the following gnus config.

(setq gnus-select-method '(nntp "news.gmane.org"))

(add-to-list
 'gnus-secondary-select-methods
 '(nnimap "gold"
          (nnimap-stream shell)
          (nnimap-shell-program
           "/usr/lib/dovecot/imap -c ~/.config/dovecot/gold.conf 2> /dev/null")))

Then G V, then M-e with: (nnvirtual "^nnimap\\+gold:Junk Email$")

Marking some articles E, but same result!

> I've looked through the code for something special being done with the
> expirable marks, and I can't find anything that's nixing out those in
> particular.  But I may be looking in the wrong parts of the code...

Thanks for looking!

--
Jamie




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Mon, 14 Oct 2019 06:36:01 GMT) Full text and rfc822 format available.

Message #39 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Mon, 14 Oct 2019 08:35:18 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

> Lars Ingebrigtsen <larsi <at> gnus.org> writes:
>
>> For my test group, I get:
>>
>> (assq 'expire (gnus-info-marks (gnus-get-info "nnvirtual:imap-test")))
>> => (expire 392790 394237)
>>
>> You get nil for yours?
>
> Yes unfortunately.
>
> (gnus-info-marks (gnus-get-info "nnvirtual:vgtest")
>
> => ((unexist (1 . 34) (37 . 40)) (seen (22 . 40)))
>
> As a sanity check I just tried recreating the group with `emacs -Q` and
> the following gnus config.
>
> (setq gnus-select-method '(nntp "news.gmane.org"))
>
> (add-to-list
>  'gnus-secondary-select-methods
>  '(nnimap "gold"
>           (nnimap-stream shell)
>           (nnimap-shell-program
>            "/usr/lib/dovecot/imap -c ~/.config/dovecot/gold.conf 2> /dev/null")))
>
> Then G V, then M-e with: (nnvirtual "^nnimap\\+gold:Junk Email$")
>
> Marking some articles E, but same result!

How very odd.  I have the same setup, but with a real IMAP server, and
not nnimap-shell-program, but that shouldn't make a difference.

I've stared at the code some more, but I can't find out why the
expirable marks go missing.

Would it be possible for you to edebug through parts of
gnus-summary-exit to see when the expirable marks disappear?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Removed tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 14 Oct 2019 08:22:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Wed, 16 Oct 2019 11:51:01 GMT) Full text and rfc822 format available.

Message #44 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Wed, 16 Oct 2019 11:50:23 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> How very odd.  I have the same setup, but with a real IMAP server, and
> not nnimap-shell-program, but that shouldn't make a difference.

I’ve just tried with a real IMAP server and an confirm it makes no
difference – expired articles in virtual groups do not get expired.

> I've stared at the code some more, but I can't find out why the
> expirable marks go missing.
>
> Would it be possible for you to edebug through parts of
> gnus-summary-exit to see when the expirable marks disappear?

There expire marks disappear where I think they are supposed to.

  ;; Make all changes in this group permanent.
    (unless quit-config
      (gnus-run-hooks 'gnus-exit-group-hook)
      (gnus-summary-update-info))  <-- Here

What I tried was:
1. enter vg and mark some articles `E`.
2. (gnus-summary-update-info)
3. (gnus-info-marks (gnus-get-info "nnvirtual:vg-test"))

The same thing happens in a non-virtual group, except then when I
re-enter the group the previously marked articles have been correctly
expired.

--
Jamie

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Fri, 18 Oct 2019 03:55:02 GMT) Full text and rfc822 format available.

Message #47 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Fri, 18 Oct 2019 05:54:01 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

> There expire marks disappear where I think they are supposed to.
>
>   ;; Make all changes in this group permanent.
>     (unless quit-config
>       (gnus-run-hooks 'gnus-exit-group-hook)
>       (gnus-summary-update-info))  <-- Here
>
> What I tried was:
> 1. enter vg and mark some articles `E`.
> 2. (gnus-summary-update-info)
> 3. (gnus-info-marks (gnus-get-info "nnvirtual:vg-test"))
>
> The same thing happens in a non-virtual group, except then when I
> re-enter the group the previously marked articles have been correctly
> expired.

Let's see...  Here's the call sequence I get when I `E' and then `q'
from the nnvirtual group:

Debugger entered: nil
  nnimap-request-expire-articles((392790 394237 394238) "spam" "quimby.gnus.org" nil)
  gnus-request-expire-articles((392790 394237 394238) "nnimap+quimby.gnus.org:spam")
  gnus-group-expire-articles-1("nnimap+quimby.gnus.org:spam")
  nnvirtual-request-expire-articles((392790 394237 394238 394330) "imap-test" "^$\\|\\(^nnimap\\+quimby\\.gnus\\.org:spam$\\)" nil)
  gnus-request-expire-articles((392790 394237 394238 394330) "nnvirtual:imap-test")
  gnus-summary-expire-articles()
  run-hooks(gnus-summary-prepare-exit-hook)
  apply(run-hooks gnus-summary-prepare-exit-hook)
  gnus-run-hooks(gnus-summary-prepare-exit-hook)
  gnus-summary-exit()
  funcall-interactively(gnus-summary-exit)

So this is done from gnus-summary-prepare-exit-hook.  What's the value
of that hook for you?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Fri, 18 Oct 2019 13:14:01 GMT) Full text and rfc822 format available.

Message #50 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Jamie Forth <J.Forth <at> gold.ac.uk>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Fri, 18 Oct 2019 13:13:19 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Let's see...  Here's the call sequence I get when I `E' and then `q'
> from the nnvirtual group:
>
> Debugger entered: nil
>   nnimap-request-expire-articles((392790 394237 394238) "spam" "quimby.gnus.org" nil)
>   gnus-request-expire-articles((392790 394237 394238) "nnimap+quimby.gnus.org:spam")
>   gnus-group-expire-articles-1("nnimap+quimby.gnus.org:spam")
>   nnvirtual-request-expire-articles((392790 394237 394238 394330) "imap-test" "^$\\|\\(^nnimap\\+quimby\\.gnus\\.org:spam$\\)" nil)
>   gnus-request-expire-articles((392790 394237 394238 394330) "nnvirtual:imap-test")
>   gnus-summary-expire-articles()
>   run-hooks(gnus-summary-prepare-exit-hook)
>   apply(run-hooks gnus-summary-prepare-exit-hook)
>   gnus-run-hooks(gnus-summary-prepare-exit-hook)
>   gnus-summary-exit()
>   funcall-interactively(gnus-summary-exit)
>
> So this is done from gnus-summary-prepare-exit-hook.  What's the value
> of that hook for you?

Not sure I’m doing the right thing here… setting `debug-on-entry` for
`gnus-summary-prepare-exit-hook` and stepping through I see this.

  Debugger entered--returning value: nil
  #f(compiled-function (&optional now) "Expire all articles that are marked as expirable in the current group." (interactive nil) #<bytecode 0x15590511b8b9>)()
* apply(#f(compiled-function (&optional now) "Expire all articles that are marked as expirable in the current group." (interactive nil) #<bytecode 0x15590511b8b9>) nil)
* gnus-summary-expire-articles()
  run-hooks(gnus-summary-prepare-exit-hook)
  apply(run-hooks gnus-summary-prepare-exit-hook)
  gnus-run-hooks(gnus-summary-prepare-exit-hook)
  gnus-summary-exit()
  funcall-interactively(gnus-summary-exit)
  call-interactively(gnus-summary-exit nil nil)
  command-execute(gnus-summary-exit)

And going a bit deeper…

  Debugger entered--entering a function:
* apply(message ("Expiring articles in %s..." "nnimap+gold:Junk Email"))
* gnus-message(6 "Expiring articles in %s..." "nnimap+gold:Junk Email")
* gnus-group-expire-articles-1("nnimap+gold:Junk Email")
* nnvirtual-request-expire-articles((13) "vg-test" "^nnimap\\+gold:Junk Email$" nil)
* gnus-request-expire-articles((13) "nnvirtual:vg-test")
* #f(compiled-function (&optional now) "Expire all articles that are marked as expirable in the current group." (interactive nil) #<bytecode 0x15590511b8b9>)()
* apply(#f(compiled-function (&optional now) "Expire all articles that are marked as expirable in the current group." (interactive nil) #<bytecode 0x15590511b8b9>) nil)
* gnus-summary-expire-articles()
  run-hooks(gnus-summary-prepare-exit-hook)
  apply(run-hooks gnus-summary-prepare-exit-hook)
  gnus-run-hooks(gnus-summary-prepare-exit-hook)
  gnus-summary-exit()
  funcall-interactively(gnus-summary-exit)
  call-interactively(gnus-summary-exit nil nil)
  command-execute(gnus-summary-exit)

Sorry if that wasn’t what you meant.

--
Jamie

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Sat, 19 Oct 2019 08:10:01 GMT) Full text and rfc822 format available.

Message #53 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Sat, 19 Oct 2019 10:09:15 +0200
Jamie Forth <J.Forth <at> gold.ac.uk> writes:

>> So this is done from gnus-summary-prepare-exit-hook.  What's the value
>> of that hook for you?
>
> Not sure I’m doing the right thing here… setting `debug-on-entry` for
> `gnus-summary-prepare-exit-hook` and stepping through I see this.
>
>   Debugger entered--returning value: nil
>   #f(compiled-function (&optional now) "Expire all articles that are
> marked as expirable in the current group." (interactive nil)
> #<bytecode 0x15590511b8b9>)()
> * apply(#f(compiled-function (&optional now) "Expire all articles that
> are marked as expirable in the current group." (interactive nil)
> #<bytecode 0x15590511b8b9>) nil)
> * gnus-summary-expire-articles()
>   run-hooks(gnus-summary-prepare-exit-hook)

[...]

> Sorry if that wasn’t what you meant.

I just wondered what the value of the variable was.  :-)  But this shows
that you definitely have gnus-summary-expire-articles in
gnus-summary-prepare-exit-hook, so that's not the reason the articles
aren't expired.

Reading the code, gnus-summary-prepare-exit-hook is called before the
marks are cleared, so at that point the expirable list should still
exist, which makes the bug you're seeing even more incomprehensible...

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Sat, 30 Apr 2022 16:25:02 GMT) Full text and rfc822 format available.

Message #56 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Sat, 30 Apr 2022 18:24:42 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> I just wondered what the value of the variable was.  :-)  But this shows
> that you definitely have gnus-summary-expire-articles in
> gnus-summary-prepare-exit-hook, so that's not the reason the articles
> aren't expired.
>
> Reading the code, gnus-summary-prepare-exit-hook is called before the
> marks are cleared, so at that point the expirable list should still
> exist, which makes the bug you're seeing even more incomprehensible...

I seemed to have dropped the ball on this one -- this was two years ago.

Jamie, do you still see these problems in recent Emacs versions?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sat, 30 Apr 2022 16:25:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#31739; Package emacs. (Sun, 29 May 2022 13:21:02 GMT) Full text and rfc822 format available.

Message #61 received at 31739 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Jamie Forth <J.Forth <at> gold.ac.uk>
Cc: "31739 <at> debbugs.gnu.org" <31739 <at> debbugs.gnu.org>
Subject: Re: bug#31739: 25.2; Cannot expire articles in virtual group
Date: Sun, 29 May 2022 15:19:59 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> I seemed to have dropped the ball on this one -- this was two years ago.
>
> Jamie, do you still see these problems in recent Emacs versions?

More information was requested, but no response was given within a
month, so I'm closing this bug report.  If the problem still exists,
please respond to this email and we'll reopen the bug report.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug closed, send any further explanations to 31739 <at> debbugs.gnu.org and Jamie Forth <j.forth <at> gold.ac.uk> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 29 May 2022 13:21:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 27 Jun 2022 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 274 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.