unifying and automating draft ("postpone/resume") behavior [was: Re: notmuch "lost" email during power failure]

Daniel Kahn Gillmor dkg at fifthhorseman.net
Tue Nov 12 15:03:58 PST 2019


Hi Antoine--

[epic story and funny rnat trimmed down to the salient bug reports and
 feature requests because i'm a boring person]

On Tue 2019-11-12 17:19:05 -0500, Antoine Beaupré wrote:
> I would argue that notmuch should at least allow me to recover from a
> power failure like this, as a MUA. It should "know" that message-mode
> stores those messages there, and, why not, also store its tempfiles
> there.

This seems like a very specific ask.  I think what we want more
generally is a sensible unification of the notmuch-emacs drafting
behaviors such that message-mode autosaves are discoverable and
recoverable in the same way that deliberately-saved drafts are.

If that means that notmuch learns about message-mode drafts, that's one
solution.  But it could also mean that notmuch-emacs overrides
message-mode's autosave drafting approach, and fixes things there too.

or, we somehow fix message-mode?

> And indeed, if I hit [control-x control-s] on this message, it *does*
> get saved as a "draft" in that it gets written in:
>
> ~/Maildir/drafts/cur/1573596264.M156307P32312.curie:2,DF
>
> That's a great improvement already. I don't remember exactly when or how
> this happened, but that's great and I thank whoever did that for us
> here.

That was Mark Walters (in Cc), see the series from 2016 starting at:

     id:1479046130-2716-1-git-send-email-markwalters1009 at gmail.com

Thank you, Mark!

> To make a long story short, I think the following should happen:
>
>  1. message-mode should automatically cleanup after itself a little
>     better (not notmuch's job? yay double-negative, that means it's much
>     job!)
>
>  2. encrypted emails should *never* be written in cleartext on the
>     filesystem (not notmuch job, which also means it's much job!)
>
>  3. notmuch's draft subsystem should know about Emacs' autosave files
>     and somehow show them in the UI

Much of the above sounds like message-mode cleanup work to me.  It might
be worth asking the message-mode folks to weigh on in this strategy.

Alternately, it might help to characterize the differences between
message-mode autosaving and notmuch explicit drafting.

 - message-mode autosaves happen without your knowledge.
   notmuch draft saving only happens when you explicitly C-x C-s
 
 - message-mode autosaves are automatically cleaned up from the
   filesystem after you send.  notmuch saved drafts persist in your
   mailstore until you remove them (though they are tagged with
   "delete")

 - message-mode autosaves appear to save in cleartext even when the
   message will be encrypted(‽).  if you try to C-x C-s on a notmuch
   draft, notmuch-emacs gives you a big ol' warning and won't let you
   save it in plaintext unless you agree (see
   notmuch-draft-save-plaintext).  (Maybe there's a third behavior which
   would be better than all of these, which is to explicitly save the
   draft of encrypted messages encrypted-to-self-only, but that's not
   implemented, afaict)

Does this all sound right?  There's a lot to unpack here.

   --dkg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20191112/a481383d/attachment.sig>


More information about the notmuch mailing list