Age | Commit message (Collapse) | Author | Files | Lines |
|
Changelog:
Notmuch 0.29.3 (2019-11-27)
===========================
General
-------
Fix for use-after-free in notmuch_config_list_{key,val}.
Fix for double close of file in notmuch-dump.
|
|
notmuch Emacs client requires Emacs itself to run.
|
|
Changelog:
Notmuch 0.29.2 (2019-10-19)
===========================
General
-------
Fix for file descriptor leak when opening gzipped mail files. Thanks
to James Troup for the bug report and the fix.
|
|
|
|
|
|
Changelog:
What's new in notmuch 0.29.1
=========================
Build
-----
Fix for installation failure with `configure --without-emacs`.
What is notmuch
===============
Notmuch is a system for indexing, searching, reading, and tagging
large collections of email messages in maildir or mh format. It uses
the Xapian library to provide fast, full-text search with a convenient
search syntax.
|
|
Changelog:
Notmuch 0.29 (2019-06-07)
=========================
General
-------
Add "body:" field to allow searching for terms that occur only in the
message body. Users will need to reindex their mail to take advantage
of this feature.
Add support for indexing user specified headers (e.g. List-Id). See
notmuch-config(1) for details. This requires reindexing after changing
the set of headers to be indexed.
Fix bug for searching in some headers for Xapian keywords in quoted
strings.
Add support for gzip compressed mail messages (/not/ multi-message
mboxes); e.g. `gzip -9 $MAIL/archive/giant-message && notmuch new`
should work. Note that maildir flag syncing for gzipped messages is
currently untested.
Notmuch is now capable of indexing, searching and rendering
cryptographically-protected Subject: headers of the form produced by
Enigmail and K-9 mail in encrypted messages.
Command Line Interface
----------------------
`notmuch show` now supports --body=false and --include-html with
--format=text
Fix several performance problems with `notmuch reindex`.
`notmuch show` and `notmuch reply` now emit per-message cryptographic
status in their json and sexp output formats. See devel/schemata for
more details about what is included there. This status includes
information about cryptographic protections for the Subject header.
Emacs
-----
Optionally check for missing attachements in outgoing messages (see
function `notmuch-mua-attachment-check`).
Bind `B` to browse URLs in current message.
Bind `g` to refresh the current notmuch buffer.
Editing a message as new now includes an FCC header.
Forwarded messages are now tagged as +forwarded (customizable).
Add references header to link forwarded message to thread of original
message.
The minimum supported major version of Emacs is now 24.
Support for GNU Emacs older than 25.1 is deprecated with this release,
and may be removed in a future release.
Notmuch-emacs documentation is somewhat expanded. More contributions
are very welcome.
Build System
------------
Notmuch release tarballs are now compressed with `xz`.
We now provide conventional detached signatures of the release
tarballs in addition to the signed `sha256sum` files.
Dependencies
------------
Support for GMime 2.6 is removed. The minimum supported version of
GMime is now 3.0.3. GMime also needs to have been compiled with
cryptography support.
Test Suite
----------
If either GNU parallel or moreutils parallel is installed, the tests
in the test suite will now be run in parallel (one per available
core). This can be disabled with NOTMUCH_TEST_SERIALIZE=1.
|
|
Changelog:
What's new in notmuch 0.28.4
=========================
Command line interface
----------------------
Fix a spurious error when using `notmuch show --raw` on messages whose
size is a multiple of the internal buffer size.
|
|
This is a semi-manual PKGREVISION bump.
|
|
* Handle mimeinfo.cache automatically
* Bump PKGREVISION
|
|
|
|
|
|
It is enabled by default and no revbump is needed.
|
|
Changelog:
Notmuch 0.28.3 (2019-03-05)
===========================
Library
-------
Fix a bug with the internal data structure _notmuch_string_map_t used
by message properties.
Build System
------------
Serialize calls to sphinx-build to avoid race condition.
|
|
* Fix PLIST for notmuch-emacs option
* Install notmuch-emacs-mua script properly in notmuch-emacs case
|
|
Notmuch 0.28.2 (2019-02-17)
===========================
Emacs
-----
Invoke gpg with --batch and --no-tty.
Python Bindings
---------------
Fix documentation build with Python 3.7. Note that Python >= 3.3 is
now needed to build this documentation.
|
|
Notmuch 0.28.1 (2019-02-01)
===========================
Build System
------------
`configure` no longer uses the special variable BASH, as this causes
problems on systems where /bin/sh is bash.
|
|
implementations.
|
|
Notmuch 0.28 (2018-10-12)
=========================
General
-------
Improve threading
The threading algorithm has been updated to consider all references,
not just the heuristically chosen parent (e.g. when that parent is
not in the database). The heuristic for choosing a parent message
has also been updated to again consider the In-Reply-To header, if
it looks sensible. Re-indexing might be needed to take advantage of
the latter change.
Handle mislabelled Windows-1252 parts
Messages that contain Windows-1252 are apparently frequently
mislabelled as ISO 8859-1. Use GMime functionality to apply the
correct encoding for such messages.
Command Line Interface
----------------------
Support relative database paths
Database paths (i.e. parameters to `notmuch config set
database.path`) without a leading `/` are now interpreted relative
to $HOME of the invoking user.
Emacs
-----
Improve stderr handling
Add a real sentinel process to clean up stderr buffer. This is
needed on e.g. macOS.
Call `notmuch-mua-send-hook` hooks when sending a message
This hook was documented, but not functional for a very long time.
Completion
----------
The zsh completion has been updated to cover most of the notmuch
CLI. Internally it uses regexp searching, so needs at least Notmuch
0.24.
Build System
------------
The build system now installs notmuch-mutt and notmuch-emacs-mua with
absolute shebangs, following the conventions of most Linux
distributions.
Test Suite
----------
Fix certain tests that were failing with GMime 2.6. Users are reminded
that support for versions of GMime before 3.0.3 has been deprecated
since Notmuch 0.25.
|
|
Notmuch 0.27 (2018-06-13)
=========================
General
-------
Add support for thread:{} queries
Queries of the form `thread:{foo} and thread:{bar}` match threads
containing (possibly distinct) messages matching foo and bar. See
`notmuch-search-terms(7)` for details.
Command Line Interface
----------------------
Add the --full-scan option to `notmuch new`
This option disables mtime based optimization of scanning for new mail.
Add new --decrypt=stash option for `notmuch show`
This facilitates a workflow for encrypted messages where message
cleartext are indexed on first read, but the user's decryption key
does not have to be available during message receipt.
Documentation
-------------
An initial manual for `notmuch-emacs` is now installed by default (in
`info` format).
Dependencies
------------
As of this release, support for versions of Xapian before 1.4.0 is
deprecated, and may disappear in a future release of notmuch.
|
|
Notmuch 0.26.2 (2018-04-28)
===========================
Library Changes
---------------
Work around Xapian bug with `get_mset(0,0, x)`.
This causes aborts in `_notmuch_query_count_documents` on
e.g. Fedora 28. The underlying bug is fixed in Xapian commit
f92e2a936c1592, and will be fixed in Xapian 1.4.6.
Make thread indexing more robust against reference loops
Choose a thread root by date in case of reference loops. Fix a
related abort in `notmuch show`.
|
|
Notmuch 0.26.1 (2018-04-02)
===========================
Library Changes
---------------
Bump the library minor version. This should have happened in 0.26, but
better late than never.
|
|
Notmuch 0.26 (2018-01-09)
=========================
Command Line Interface
----------------------
Support for re-indexing existing messages
There is a new subcommand, `notmuch reindex`, which re-indexes all
messages matching supplied search terms. This permits users to
change the way specific messages are indexed.
Note that for messages with multiple variants in the message
archive, the recorded Subject: of may change upon reindexing,
depending on the order in which the variants are indexed.
Improved error reporting in notmuch new
Give more details when reporting certain Xapian exceptions.
Support maildir synced tags in `new.tags`
Tags `draft`, `flagged`, `passed`, and `replied` are now supported
in `new.tags`. The tag `unread` is still special in the presence of
maildir syncing, and will be added for files in `new/` regardless of
the setting of `new.tags`.
Support /regex/ in new.ignore
Files and directories may be ignored based on regular expressions.
Allow `notmuch insert --folder=""`
This inserts into the top level folder.
Strip trailing '/' from folder path for notmuch insert
This prevents a potential problem with duplicated database records.
New option --output=address for notmuch address
Make `notmuch show` more robust against deleting duplicate files
The option --decrypt now takes an explicit argument
The --decrypt option to `notmuch show` and `notmuch reply` now takes
an explicit argument. If you were used to invoking `notmuch show
--decrypt`, you should switch to `notmuch show --decrypt=true`.
Boolean and keyword arguments now take a `--no-` prefix
Encrypted Mail
--------------
Indexing cleartext of encrypted e-mails
It's now possible to include the cleartext of encrypted e-mails in
the notmuch index. This makes it possible to search your encrypted
e-mails with the same ease as searching cleartext. This can be done
on a per-message basis by passing --decrypt=true to indexing
commands (new, insert, reindex), or by default by running "notmuch
config set index.decrypt true".
Encrypted messages whose cleartext is indexed will typically also
have their session keys stashed as properties associated with the
message. Stashed session keys permit rapid rendering of long
encrypted threads, and disposal of expired encryption-capable keys.
If for some reason you want cleartext indexing without stashed
session keys, use --decrypt=nostash for your indexing commands (or
run "notmuch config set index.decrypt nostash"). See `index.decrypt`
in notmuch-config(1) for more details.
Note that stashed session keys permit reconstruction of the
cleartext of the encrypted message itself, and the contents of the
index are roughly equivalent to the cleartext as well. DO NOT USE
this feature without considering the security of your index.
Emacs
-----
Guard against concurrent searches in notmuch-tree
Use make-process when available
This allows newer Emacs to separate stdout and stderr from the
notmuch command without using temporary files.
Library Changes
---------------
Indexing files with duplicate message-id
Files with duplicate message-id's are now indexed, and searchable
via terms and phrases. There are known issues related to
presentation of results and regular-expression search, but in
principle no mail file should be completely unsearchable now.
New functions to count files
Two new functions in the libnotmuch API:
`notmuch_message_count_files`, and `notmuch_thread_get_total_files`.
New function to remove properties
A new function was added to the libnotmuch API to make it easier to
drop all properties with a common pattern:
`notmuch_message_remove_all_properties_with_prefix`
Change of return value of `notmuch_thread_get_authors`
In certain corner cases, `notmuch_thread_get_authors` previously
returned NULL. This has been replaced by an empty string, since the
possibility of NULL was not documented.
Transition `notmuch_database_add_message` to `notmuch_database_index_file`
When indexing an e-mail message, the new
`notmuch_database_index_file` function is the preferred form, and
the old `notmuch_database_add_message` is deprecated. The new form
allows passing a set of options to the indexing engine, which the
operator may decide to change from message to message.
Test Suite
----------
Out-of-tree builds
The test suite now works properly with out-of-tree builds, i.e. with
separate source and build directories. The --root option to tests
has been dropped. The same can now be achieved more reliably using
out-of-tree builds.
Python Bindings
---------------
Python bindings specific Debian packaging is removed
The bindings have been build by the top level Debian packaging for a
long time, and `bindings/python/debian` has bit-rotted.
Open mail files in binary mode when using Python 3
This avoids certain encoding related crashes under Python 3.
Add python bindings for `notmuch_database_{get,set}_config*`
Optional `decrypt_policy` flag is available for notmuch.database().index_file()
nmbug
-----
nmbug's internal version increases to 0.3 in this notmuch release.
User-facing changes with this notmuch release:
* Accept failures to unset `core.worktree` in `clone`, which allows
nmbug to be used with Git 2.11.0 and later.
* Auto-checkout in `clone` if it wouldn't clobber existing content,
which makes the initial clone more convenient.
* Only error for invalid diff lines in `tags/`, which allows for
`README`s and similar in nmbug repositories.
Documentation
-------------
New man page: notmuch-properties(7)
This new page to the manual describes common conventions for how
properties are used by libnotmuch, the CLI, and associated programs.
External projects that use properties are encouraged to claim their
properties and conventions here to avoid collisions.
|
|
Notmuch 0.25.3 (2017-12-08)
===========================
Emacs
-----
Extend mitigation (disabling handling x-display in text/enriched) for
Emacs bug #28350 to Emacs versions before 24.4 (i.e. without
`advice-add`).
Command Line Interface
----------------------
Correctly report userid validity. Fix test suite failure for GMime >=
3.0.3. This change raises the minimum supported version of GMime 3.x
to 3.0.3.
|
|
Notmuch 0.25.2 (2017-11-05)
===========================
Command Line Interface
----------------------
Fix segfault in notmuch-show crypto handling when compiled against
GMime 2.6; this was a regression in 0.25.
General
-------
Support for GMime before 3.0 is now deprecated, and will be removed in
a future release.
|
|
Notmuch 0.25.1 (2017-09-11)
===========================
Emacs
-----
Disable handling x-display in text/enriched messages. Mitigation for
Emacs bug #28350.
|
|
|
|
Notmuch 0.25 (2017-07-25)
=========================
General
-------
Add regexp searching for mid, paths, and tags.
Skip HTML tags when indexing
In particular this avoids indexing large inline images.
Command Line Interface
----------------------
Bash completion is now installed to /usr/share by default.
Allow space as separator for keyword arguments.
Emacs
-----
Support for stashing message timestamp in show and tree views
Invoking `notmuch-show-stash-date` with a prefix argument
stashes the unix timestamp of the current message instead of
the date string.
Don't use 'function' as variable name, workaround emacs bug 26406.
Library Changes
---------------
Add workaround for date parsing of bad input in older GMime
In certain circumstances, older GMime libraries could return
negative numbers when parsing syntactically invalid dates.
Replace deprecated functions with status returning versions
API of notmuch_query_{search,count}_{messages,threads} has
changed. notmuch_query_add_tag_exclude now returns a status
value.
Add support for building against GMime 3.0.
Rename libutil.a to libnotmuch_util.a.
libnotmuch SONAME is incremented to libnotmuch.so.5.
|
|
Notmuch 0.24.2 (2017-06-01)
===========================
Command Line Interface
----------------------
Fix output from `notmuch dump --include=properties` to not include tags.
Emacs
-----
Fix filename stashing in tree view.
|
|
|
|
|
|
Notmuch 0.24.1 (2017-04-01)
===========================
General
-------
Fix regressions in non-regexp search for `from:` and `subject:`.
The regexp search code in 0.24 introduced a regression in the
handling of empty queries and wildcards. These are both corrected in
this release.
Command Line Interface
----------------------
Fix several memory leaks in `notmuch show`.
Update NEWS for 0.24 to mention schema changes.
Fix bug in dump header.
The previous version of the dump header failed to mention the
inclusion of tags. This fix bumps the version number of the dump
format to 3. There are no other changes to the format.
Library Changes
---------------
Fix a read-after-free in the library.
|
|
|
|
Notmuch 0.24 (2017-03-12)
=========================
General
-------
Regular expression searches supported for `from:` and `subject:`.
This requires recent Xapian (1.4+) See notmuch-search-terms(7) for
details.
Command Line Interface
----------------------
Run external `notmuch-` prefixed commands as subcommands
You can now add your own `notmuch-` prefixed commands in PATH, and
have notmuch run them as if they were notmuch commands. See the
`notmuch(1)` man page for details
Emacs
-----
Postpone and resume messages in `notmuch-message-mode` (composition)
Notmuch now has built in support for postponing, saving and resuming
messages. The default bindings are C-x C-s to save a draft, C-c C-p
to postpone a draft (save and exit compose buffer), and "e" in show
or tree view to resume.
Draft messages are tagged with `notmuch-draft-tags` (draft by
default) so you may wish to add that to the excluded tags list. When
saving a previously saved draft message the earlier draft gets
tagged deleted.
Note that attachments added before postponing will be included as
they were when you postponed in the final message.
Address Completion
It is now possible to save the list of address completions for
notmuch's internal completion between runs of emacs. This makes the
first calls to address completion much better and faster. For
privacy reasons it is disabled by default, to enable set or
customize `notmuch-address-save-filename`.
Tag jump menu
It is now possible to configure tagging shortcuts (with an interface
like notmuch jump). For example (by default) k u will remove the
unread tag, and k s will add a tag "spam" and remove the inbox
tag. Pressing k twice will do the reverse operation so, for example,
k k s removes the spam tag and adds the inbox tag. See the customize
variable `notmuch-tagging-keys` for more information.
Refresh all buffers
It is now possible to refresh all notmuch buffers to reflect the
current state of the database with a single command, `M-=`.
Stop display of application/* parts
By default gnus displays all application/* parts such as
application/zip in the message buffer. This has several undesirable
effects for notmuch (security, triggering errors etc). Notmuch now
overrides this and does not display them by default. If you have
customized `mm-inline-override-types` then we assume you know what
you want and do not interfere; if you do want to stop the display of
application/* add application/* to your customization. If you want
to allow application/* then set `mm-inline-override-types` to
"non/existent".
Small change in the api for notmuch-search-tag
When `notmuch-search-tag` is called non-interactively and the region
is set, then it only tags the threads in the region. (Previously it
only tagged the current thread.)
Bugfix for sending messages with very long headers.
Previously emacs didn't fold very long headers when sending which
could cause the MTA to refuse to send the message. This makes sure
it does fold any long headers so the message is RFC compliant.
`notmuch emacs-mua` command installed with the Emacs interface
We've carried a `notmuch-emacs-mua` script in the source tree for
quite some time. It can be used to launch the Notmuch Emacs
interface from the command line in many different ways. Starting
with this release, it will be installed with the Emacs
interface. With the new external subcommand support, the script
transparently becomes a new notmuch command. See the
`notmuch-emacs-mua(1)` man page for details.
Notmuch Emacs desktop integration
The desktop integration file will now be installed with the Notmuch
Emacs interface, adding a Notmuch menu item and configuration to
allow the user to set up Notmuch Emacs as the `mailto:` URL handler.
Library changes
---------------
`notmuch_query_count_messages` is now non-destructive.
Internally the implementation of excludes has changed to make this
possible.
Improved handling of DatabaseModifiedError
Previously uncaught exceptions reading message metadata are now
handled.
|
|
Upstream claims dump/restore may not work correctly with zlib-1.2.3.
https://notmuchmail.org/pipermail/notmuch/2017/024277.html
Depend on zlib-1.2.5.2 and bump PKGREVISION.
While here, update patch comments.
|
|
Notmuch 0.23.7 (2017-02-28)
===========================
Test Suite
----------
Drop use of gpgconf --create-socketdir. Move $GNUPGHOME to /tmp.
It turns out the hardcoded use of /run/user in gpg doesn't work out
that well in some environments. The more low tech fix is to move all
of $GNUPGHOME to somewhere where we can control the length of the
paths.
Notmuch 0.23.6 (2017-02-27)
===========================
Command Line Interface
----------------------
Fix read-after-free bug in `notmuch new`.
Test Suite
----------
Use gpgconf --create-socketdir if available.
GnuPG has a facility to use sockets in /run or /var/run to avoid
problems with long socket paths, but this is not enabled by default
for GNUPGHOME other than $HOME/.gnupg. Enable it, if possible.
|
|
Notmuch 0.23.5 (2017-01-09)
===========================
Build system
------------
Fix quoting bug in configure. This had introduced a RUNPATH into the
notmuch binary in cases where it was not not needed.
|
|
Notmuch 0.23.4 (2016-12-24)
===========================
Command Line Interface
----------------------
Improve error handling in notmuch insert
Database lock errors no longer prevent message file delivery to the
filesystem. Certain errors during `notmuch insert` most likely to
be temporary return EX_TEMPFAIL.
Emacs
-----
Restore autoload cookie for notmuch-search.
|
|
Notmuch 0.23.3 (2016-11-27)
===========================
Command Line Interface
----------------------
Treat disappearing files during notmuch new as non-fatal.
Test Suite
----------
Fix incompatibility (related to signature size) with gnupg 2.1.16.
|
|
Notmuch 0.23.2 (2016-11-20)
===========================
Emacs
-----
Fix notmuch-interesting-buffer and notmuch-cycle-notmuch-buffers.
notmuch-tree-mode and notmuch-message-mode buffers are now
considered interesting by `notmuch-interesting-buffer` and
`notmuch-cycle-notmuch-buffers`.
Restore compatibility with Emacs 23.
Notmuch support for Emacs 23 is now deprecated.
|
|
|
|
Notmuch 0.23.1 (2016-10-23)
===========================
General
-------
Require Xapian >= 1.2.6
The ifdef branch for older Xapian (pre-compact API) had bit-rotted.
Emacs
-----
Fix default colours for unread and flagged messages
In 0.23 the default colours for unread and flagged messages in
search view were accidentally swapped. This release returns them to
the original colours.
A related change in 0.23 broke the customize widget for
notmuch-search-line-faces. This is now fixed.
Fix test failure with Emacs 25.1
A previously undiscovered jit-lock related bug was exposed by Emacs
25, causing a notmuch-show mode test to fail. This release fixes the
bug, and hence the test.
|
|
Notmuch 0.23 (2016-10-03)
=========================
General (Xapian 1.4+)
---------------------
Compiling against Xapian 1.4 enables several new features.
Support for single argument date: queries
`date:<expr>` is equivalent to `date:<expr>..<expr>`.
Support for blocking opens
When opening a database notmuch by default will wait for another
process to release a write lock, rather than returning an error.
Support for named queries
Named queries (also known as 'saved searches') can be defined with a
`query:name` format. The expansion of these queries is stored in the
database and they can be used from any notmuch client.
Library
-------
Message property API
libnotmuch now supports the attachment of arbitrary key-value pairs
to messages. These can be used by various tools to manage their
private data without polluting the user tag space. They also support
iteration of values with the same key or same key prefix.
Bug fix for `notmuch_directory_set_mtime`
Update cached mtime to match on-disk mtime.
CLI
---
Support for compile time options
A group of `built_with` keys is now supported for notmuch
config. Initial keys in this group are `compact`, `field_processor`,
and `retry_lock`.
Dump/Restore support for configuration information and properties
Any configuration information stored in the database (initially just
named queries) is dumped and restored. Similarly any properties
attached to messages are also dumped and restored. Any new
information in the dump format is prefixed by '#' to allow existing
scripts to ignore it.
Emacs
-----
Make notmuch-message-mode use insert for fcc
Notmuch-message-mode now defaults to using notmuch insert for
fcc. The old file based fcc behaviour can be restored by setting the
defcustom `notmuch-maildir-use-notmuch-insert` to nil.
When using notmuch insert, `notmuch-fcc-dirs` must be a subdirectory
of the mailstore (absolute paths are not permitted) followed by any
tag changes to be applied to the inserted message. The tag changes
are applied after the default tagging for new messages. For example
setting the header to "sentmail -inbox +sent" would insert the
message in the subdirectory sentmail of the mailstore, add the tag
"sent", and not add the (normally added) "inbox" tag.
Finally, if the insert fails (e.g. if the database is locked) the
user is presented with the option to retry, ignore, or edit the
header.
Make internal address completion customizable
There is a new defcustom `notmuch-address-internal-completion` which
controls how the internal completion works: it allows the user to
choose whether to match on messages the user sent, or the user
received, and to filter the messages used for the match, for example
by date.
Allow internal address completion on an individual basis
There is a new function `notmuch-address-toggle-internal-completion`
(by default it has no keybinding) which allows users who normally
use an external completion command to use the builtin internal
completion for the current buffer.
Alternatively, if the user has company-mode enabled, then the user
can use company mode commands such as `company-complete` to
activate the builtin completion for an individual completion.
Resend messages
The function `notmuch-show-resend-message` (bound to `b` in show
and tree modes) will (attempt to) send current message to new
recipients. The headers of the message won't be altered (e.g. `To:`
may point to yourself). New `Resent-To:`, `Resent-From:` and so on
will be added instead.
Face customization is easier
New faces `notmuch-tag-unread`, `notmuch-tag-flagged`,
`notmuch-tag-deleted`, `notmuch-tag-added`,
`notmuch-search-flagged-face` and `notmuch-search-unread-face` are
now used by default. Customize `notmuch-faces` to modify them.
Omit User-Agent header by default when sending mail
Ruby Bindings
-------------
Add support for `notmuch_database_get_all_tags`
Go Bindings
-----------
Go bindings moved to contrib
Add support for `notmuch_threads_t` and `notmuch_thread_t`
Fixed constant values so they are not all zero anymore
Previously, it was impossible to open writable database handles,
because `DATABASE_MODE_READ_ONLY` and `DATABASE_MODE_READ_WRITE` were
both set to zero.
The same issue occured with sort modes.
|
|
Notmuch 0.22.2 (2016-09-08)
===========================
Test Suite
----------
Silence gdb more
Have gdb write to a log file instead of stdout, hiding some more
(harmless) stderr chatter which causes test failures.
Hardcode fingerprint in PGP/MIME tests
Make the tests more robust against changing GnuPG output formats.
|
|
Notmuch 0.22.1 (2016-07-19)
===========================
Library
-------
Correct the definition of `LIBNOTMUCH_CHECK_VERSION`.
Document the (lack of) operations permitted on a closed database.
Test Suite
----------
Fix race condition in dump / restore tests.
Notmuch-Mutt
------------
Use `env` to locate perl.
Emacs
-----
Tell `message-mode` mode that outgoing messages are mail
This makes message-mode configuration behave more predictably.
Respect charset of MIME parts when reading them
Fix previous assumption that everyone uses UTF-8.
|
|
Notmuch 0.22 (2016-04-26)
=========================
General
-------
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.
Bug Fixes
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 `gpgsm`.
Build System
------------
Drop dependency on "pkg-config emacs".
Emacs Interface
---------------
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
`notmuch-mua-reply-insert-header-p-function`.
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
setting `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
types).
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 `./emacs` directory.
Documentation
-------------
New `notmuch-report(1)` and `notmuch-report.json(5)` man pages
describe `notmuch-report` and its JSON configuration file. You can
build these files by running `make` in the `devel/nmbug/doc`
directory.
notmuch-report
--------------
Renamed from `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 `config`
branch of `NBMGIT` has changed from `status-config.json` to
`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.json(5)`.
`notmuch-report` now wraps query phrases in parentheses when and-ing
them together, to avoid confusion about clause grouping.
|
|
anyway, leading to build sadness. Add --without-ruby to CONFIGURE_ARGS
to match the current intent.
|
|
|
|
|
|
Notmuch 0.21 (2015-10-29)
=========================
General
-------
Notmuch now requires gmime >= 2.6.7. The gmime 2.4 series is no longer
supported.
Database revision tracking: `lastmod:` queries
Each message now has a metadata revision number that increases with
every tagging operation. See the discussion of `lastmod:` in
`notmuch-search-terms(7)` for more information.
Date queries now support `date:<expr>..!` shorthand for
`date:<expr>..<expr>`
You can use, for example, `date:yesterday..!` to match from the
beginning of yesterday to the end of yesterday. For further details,
please refer to the `notmuch-search-terms` manual page.
Notmuch database upgrade to support `lastmod:` queries
The above mentioned `lastmod:` prefix. This will be done
automatically, without prompting on the next time `notmuch new` is
run after the upgrade. The upgrade is not reversible, and the
upgraded database will not be readable by older versions of
Notmuch. As a safeguard, a database dump will be created in the
`.notmuch` directory before upgrading.
Build System
------------
The ruby bindings are now built as part of the main notmuch build
process. This can be disabled with the `--without-ruby` option to
configure.
Building the documentation can be disabled with the `--without-docs`
option to configure.
Skipped individual tests are no longer considered as failures.
Command Line Interface
----------------------
Database revision tracking
Two new options were added to support revision tracking. A global
option "--uuid" (`notmuch(1)`) was added for to detect counter
rollover and reinitialization, and `notmuch-count(1)` gained a
`--lastmod` option to query database revision tracking data.
The `notmuch address` command supports new deduplication schemes
`notmuch address` has gained a new `--deduplicate` option to specify
how the results should be deduplicated, if at all. The alternatives
are `no` (do not deduplicate, useful for processing the results with
external tools), `mailbox` (deduplicate based on the full, case
sensitive name and email address), and `address` (deduplicate based
on the case insensitive address part). See the `notmuch-address`
manual page for further information.
Emacs Interface
---------------
`notmuch-emacs-version` is used in `User-Agent` header
The value of recently introduced variable `notmuch-emacs-version` is
now used as a part of `User-Agent` header when sending emails.
Removed `notmuch-version` function by renaming it to `notmuch-cli-version`
With existing variable `notmuch-emacs-version` the accompanied
function which retrieves the version of `notmuch-command` is
better named as `notmuch-cli-version`.
Query input now supports completion for "is:<tag>"
New message composition mode: `notmuch-compose-mode`
This is mainly to fix fcc handling, but may be useful for user
customization as well.
Allow filtering of search results in `notmuch-show`
Add function to rerun current tree-view search in search mode
Bug fix for replying to encrypted messages in `notmuch-tree` mode
Allow saved searched to specify tree view rather than search view
Applies to saved searches run from `notmuch-hello`, or by a keyboard
shortcut (`notmuch-jump`). Can be set in the customize interface, or
by adding :search-type tree to the appropriate saved search plist in
`notmuch-saved-searches`.
Increase maximum size of rendered text parts
The variable `notmuch-show-max-text-part-size` controls the maximum
size (in bytes) which is automatically rendered. This may make
rendering large threads slower. To get the previous behaviour set
this variable to 10000.
Library
-------
The use of absolute paths is now enforced when calling
`notmuch_database_{open, create}`
New function `notmuch_directory_delete` to delete directory documents
Previously there was no way to delete directory documents from the
database, leading to confusing results when the "ghost" directory
document of a renamed or deleted filesystem directory was
encountered every time the parent directory was being scanned by
`notmuch new`. The mtime of the old directory document was also used
if a directory by the same name was added again in the filesystem,
potentially bypassing the scan for the directory. The issues are
fixed by providing a library call to delete directory documents, and
deleting the old documents in `notmuch new` on filesystem directory
removal or rename.
Database revision tracking
Revision tracking is supported via a new prefix "lastmod:" in the
query parser and the new function
`notmuch_database_get_revision`. For the latter, see `notmuch(3)`.
New status code returning API for n_query_count_{messages,threads}
Deprecated functions
`notmuch_query_search_threads`, `notmuch_query_search_messages`,
`notmuch_query_count_messages`, and `notmuch_query_count_threads`
are all deprecated as of this release. Clients are encouraged to
transition to the `_st` variants supporting better error reporting.
nmbug-status
------------
`nmbug-status` now supports specifying the sort order for each view.
|