-Notmuch 0.26 (UNRELEASED)
+Notmuch 0.26.2 (UNRELEASED)
+===========================
+
+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)
=========================
-Test Suite
-----------
+Command Line Interface
+----------------------
-Out-of-tree builds
+Support for re-indexing existing messages
- 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.
+ 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
--------------
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 with the --decrypt argument to indexing
+ 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".
- Note that the contents of the index are sufficient to roughly
- reconstruct the cleartext of the message itself, so please ensure
- that the notmuch index itself is adequately protected. DO NOT USE
+ 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)
===========================
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.
+ The same issue occurred with sort modes.
Notmuch 0.22.2 (2016-09-08)
===========================
Emacs
-----
-Avoid rendering large text attachements.
+Avoid rendering large text attachments.
Improved rendering of CID references in HTML.
Sphinx is now mandatory to build docs
Support for using rst2man in place of sphinx to build the
- docmumentation has been removed.
+ documentation has been removed.
Improved notmuch-search-terms.7
The commands set consistent exit status codes on failures
The cli commands now consistently set exit status of 1 on failures,
- except where explicitly otherwise noted. The notable expections are
+ except where explicitly otherwise noted. The notable exceptions are
the status codes for format version mismatches for commands that
support formatted output.
Add keybinding ('c I') for stashing Message-ID's without an id: prefix
- Reduces manual labour when stashing them for use outside notmuch.
+ Reduces manual labor when stashing them for use outside notmuch.
Do not query on `notmuch-search` exit
nmbug - share tags with a given prefix
nmbug helps maintain a git repo containing all tags with a given
- prefix (by default "notmuch::"). Tags can be shared by commiting
+ prefix (by default "notmuch::"). Tags can be shared by committing
them to git in one location and restoring in another.
Notmuch 0.9 (2011-10-01)