Notmuch 0.22 (2016-04-26)
Xapian 1.3 support
Notmuch should now build (and the test suite should pass) on recent releases of Xapian 1.3.x. It has been tested with Xapian 1.3.5.
Limited support for S/MIME messages
Signature verification is supported, but not decryption. S/MIME signature creation and S/MIME encryption are supported via built-in support in Emacs. S/MIME support is not extensively tested at this time.
Fix for threading bug involving deleting and re-adding messages. Fix for case-sensitive content disposition headers. Fix handling of 1 character directory names at top level.
Command Line Interface
notmuch show now supports verifying S/MIME signatures
This support relies on an appropriately configured
Drop dependency on "pkg-config emacs".
Notmuch replies now include all parts shown in the show view
There are two main user visible changes. The first is that rfc822 parts are now included in replies.
The second change is that part headers are now included in the reply
buffer to provide visible separation of the parts. The choice of
which part headers to show is customizable via the variable
Filtering or Limiting messages is now bound to
l in the search view
This binding now matches the analogous binding in show view.
F forwards all open messages in a thread
When viewing a thread of messages, the new binding
F can be used
to generate a new outgoing message which forwards all of the open
messages in the thread. This is analogous to the
f binding, which
forwards only the current message.
Preferred content type can be determined from the message content
More flexibility in choosing which sub-part of a
multipart/alternative part is initially shown is available by
notmuch-multipart/alternative-discouraged to a function
that returns a list of discouraged types. The function so specified
is passed the message as an argument and can examine the message
content to determine which content types should be discouraged. This
is in addition to the current capabilities (i.e. setting
notmuch-multipart/alternative-discouraged to a list of discouraged
When viewing a thread ("show" mode), queries that match no messages no longer generate empty buffers
Should an attempt be made to view the thread corresponding to a query that matches no messages, a warning message is now displayed and the terminal bell rung rather than displaying an empty buffer (or, in some cases, displaying an empty buffer and throwing an error). This also affects re-display of the current thread.
Handle S/MIME signatures in emacs
The emacs interface is now capable making and verifying S/MIME signatures.
notmuch-message-address-insinuate is now a no-op
This reduces the amount of interference with non-notmuch uses of message-mode.
Address completion improvements
An external script is no longer needed for address completion; if
you previously configured one, customize the variable
notmuch-address-command to try the internal completion. If
company-mode is available, notmuch uses it by default for
interactive address completion.
Test and experiment with the emacs MUA available in source tree
./devel/try-emacs-mua runs emacs and fills the window with
information how to try the MUA safely. Emacs is configured to use
the notmuch (lisp) files located in
notmuch-report.json(5) man pages
notmuch-report and its JSON configuration file. You can
build these files by running
make in the
nmbug-status. This script generates reports based on
notmuch queries, and doesn't really have anything to do with nmbug,
except for sharing the
NMBGIT environment variable. The new name
focuses on the script's action, instead of its historical association
with the nmbug workflow. This should make it more discoverable for
users looking for generic notmuch reporting tools.
The default configuration file name (extracted from the
NBMGIT has changed from
notmuch-report.json so it is more obviously associated with the
report-generating script. The configuration file also has a new
meta.message-url setting, which is documented in
notmuch-report now wraps query phrases in parentheses when and-ing
them together, to avoid confusion about clause grouping.