X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=NEWS;h=01397914299849bef2e26e4fe2c85fbab689e3c1;hb=f25e48e0234a050cab38306a066605a0f8bd3d12;hp=debe6f0a6ba36ff17eaa91620a1141ae77eca726;hpb=c9ec90ae7f22d817aa0ddb5e1a0ae80715071b5e;p=notmuch diff --git a/NEWS b/NEWS index debe6f0a..a88d31ac 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,1233 @@ +Notmuch 0.34 (2021-10-20) +========================= + +General +------- + +An optional new s-expression based query parser is available if +notmuch is built with the `sfsexp` library. See +notmuch-sexp-queries(7) for syntax, and use `notmuch config get +built_with.sexpr_queries` to check if notmuch is compiled with +s-expression query support. + +CLI +--- + +Support multiple `Delivered-To` headers in notmuch-reply(1). + +Emacs +----- + +Functions are now allowed in `notmuch-search-result-format`. + +Improvements to unthreaded view on large threads. + +Tolerate bad/missing working directory for most commands. + +Allow customization of tree drawing symbols in notmuch-tree mode. + +Notmuch 0.33.2 (2021-09-30) +=========================== + +Tests +----- + +Improve reliability of T355-smime by changing gpgsm initialization. + +Notmuch 0.33.1 (2021-09-10) +=========================== + +General +------- + +Replace the fully-qualified-domain-name of the host with "localhost" +in the default email address. This should fix two flaky subtests in +T590-libconfig. + +Notmuch 0.33 (2021-09-03) +========================= + +Library +------- + +Correct documentation about transactions. + +Add a configurable automatic commit of transactions. See +`database.autocommit` in notmuch-config(1). + +Document the algorithm used to find a database. + +CLI +--- + +Define format version 5, which supports sorting the output of +notmuch-show. + +Emacs +----- + +`notmuch` no longer sets `mail-user-agent` on load. To restore the +previous behaviour of using notmuch to send mail by default, customize +`mail-user-agent` to `notmuch-user-agent`. + +`notmuch-company` now works in `org-msg`. + +Improve the display of messages from long threads in unthreaded mode. + +Prefer email addresses over User ID when showing valid signatures. + +Define a new face `notmuch-jump-key`. + +New commands in notmuch-tree view: `notmuch-tree-filter` and `notmuch-tree-filter-by-tag`. + +Honour `notmuch-show-text/html-blocked-images` when using `w3m` to +render html. + +Support toggling sort order in notmuch-tree mode. + +Ruby +---- + +Memory management of allocated notmuch objects (database, messages, +etc...) is now done via the Ruby GC. This removes all constraints on +the order of object destruction. Database close and destroy are +split, following an old library API change. + +Vim +--- + +Respect excluded tags when showing a thread. + +Documentation +------------- + +Fix doc build for Sphinx 4.0. + +Improve the markup and linking of the documentation. + +Notmuch 0.32.3 (2021-08-17) +=========================== + +Library +------- + +Restore location of database via `MAILDIR` environment variable, which +was broken in 0.32. + +Bump libnotmuch minor version to match the documentation in +`notmuch.h`. + +Correct documentation for deprecated database opening functions to +point out that they (still) do not load configuration information. + +CLI +--- + +Restore "notmuch config get built_with.*", which was broken in 0.32. + +Notmuch 0.32.2 (2021-06-27) +=========================== + +General +------- + +Fix a bug from 2017 that can add duplicate thread-id terms to message +documents. + +CLI +--- + +Fix small memory leak in notmuch new. + +Emacs +----- + +Add `(require 'seq)` for `seq-some`. + +Documentation +------------- + +Fix man page build for Sphinx 4.x. Fix variable name in emacs docs. + +Tests +----- + +Fix backup creation in `perf-test/T00-new`. Check openssl +prerequisite in `add_gpgsm_home`. + +Notmuch 0.32.1 (2021-05-15) +=========================== + +General +------- + +Restore handling of relative values for `database.path` that was +broken by 0.32. Extend this handling to `database.mail_root`, +`database.backup_dir`, and `database.hook_dir`. + +Reload certain metadata from Xapian database in +notmuch_database_reopen. This fixes a bug when adding messages to the +database in a pre-new hook. + +Fix default of `$HOME/mail` for `database.path`. In release 0.32, this +default worked only in "notmuch config". + +Emacs +----- + +Restore the dynamically bound variables `tag-changes` and `query` in +in `notmuch-before-tag-hook` and `notmuch-after-tag-hook`. + +Add `notmuch-jump-key` face to fontify keys in `notmuch-jump` and +related functions. To ensure backward compatibility, the new face +inherits from `minibuffer-prompt`. + +Notmuch 0.32 (2021-05-02) +========================= + +General +------- + +This release includes a significant overhaul of the configuration +management facilities for notmuch. The previous distinction between +configuration items that can be modified via plain text configuration +files and those that must be set in the database via the "notmuch +config" subcommand is gone, and all configuration items can be set in +both ways. The external configuration file overrides configuration +items in the database. The location of database, hooks, and +configuration files is now more flexible, with several new +configuration variables. In particular XDG locations are now supported +as fallbacks for database, configuration and hooks. For more +information see `notmuch-config(1)`. + +Library +------- + +To support the new configuration facilities, several functions and +constants have been added to the notmuch API. Most notably: + +- `notmuch_database_create_with_config` +- `notmuch_database_open_with_config` +- `notmuch_database_load_config` +- `notmuch_config_get` + +A previously requested API change is that `notmuch_database_reopen` is +now exposed (and generalized). + +The previously severe slowdowns from large numbers calls to +notmuch_database_remove_message or notmuch_message_delete in one +session has been fixed. + +As always, the canonical source of API documentation is +`lib/notmuch.h`, or the doxygen formatted documentation in `notmuch(3)`. + +CLI +--- + +The `notmuch config set` subcommand gained a `--database` argument to +specify that the database should be updated, rather than a config file. + +The speed of `notmuch new` and `notmuch reindex` in dealing with large +numbers of mail file deletions is significantly improved. + +Emacs +----- + +Completion related updates include: de-duplicating tags offered for +completion, use the actual initial input in address completion, allow +users to opt out of notmuch address completion, and do not force Ido +when prompting for senders. + +Some keymaps used to contain bindings for unnamed commands. These +lambda expressions have been replaced by named commands (symbols), to +ease customization. + +Lexical binding is now used in all notmuch-emacs libraries. + +Fix bug in calling `notmuch-mua-mail` with a non-nil RETURN-ACTION. + +Removed, inlined or renamed functions and variables: + `notmuch-address-locate-command`, + `notmuch-documentation-first-line`, `notmuch-folder`, + `notmuch-hello-trim', `notmuch-hello-versions` => `notmuch-version`, + `notmuch-remove-if-not`, `notmuch-search-disjunctive-regexp`, + `notmuch-sexp-eof`, `notmuch-split-content-type`, and + `notmuch-tree-button-activate`. + +Keymaps are no longer fset, which means they need to be referred to in +define-key directly (without quotes). If your Emacs configuration has a +keybinding like: + (define-key 'notmuch-show-mode-map "7" 'foo) +you should change it to: + (define-key notmuch-show-mode-map "7" 'foo) + +Notmuch 0.31.4 (2021-02-18) +=========================== + +Library +------- + +Fix include bug triggered by glib 2.67. + +Test +---- + +Fix race condition in T568-lib-thread. + +Notmuch 0.31.3 (2020-12-25) +=========================== + +Bindings +-------- + +Fix for exclude tags in notmuch2 bindings. + +Build +----- + +Portability update for T360-symbol-hiding. + +Library +------- + +Fix for memory error in notmuch_database_get_config_list. + +Notmuch 0.31.2 (2020-11-08) +=========================== + +Build +----- + +Catch one more occurence of "version" in the build system, which +caused the file to be regenerated in the release tarball. + +Notmuch 0.31.1 (2020-11-08) +=========================== + +Library +------- + +Fix a memory initialization bug in notmuch_database_get_config_list. + +Build +----- + +Rename file 'version' to 'version.txt'. The old file name conflicted +with a C++ header for some compilers. + +Replace use of coreutils `realpath` in configure. + +Notmuch 0.31 (2020-09-05) +========================= + +Emacs +----- + +Notmuch now supports Emacs 27.1. You may need to set +`mml-secure-openpgp-sign-with-sender` and/or +`mml-secure-smime-sign-with-sender` to continue signing messages. + +The minimum supported major version of GNU Emacs is now 25.1. + +Add support for moving between threads after notmuch-tree-from-search-thread. + +New `notmuch-unthreaded` mode (added in Notmuch 0.30) + + Unthreaded view is a mode where each matching message is shown on a + separate line. + + The main key entries to unthreaded view are + + 'u' enter a query to view in unthreaded mode (works in hello, + search, show and tree mode) + + 'U' view the current query in unthreaded mode (works from search, + show and tree) + + Saved searches can also specify that they should open in unthreaded + view. + + Currently it is not possible to specify the sort order: it will + always be newest first. + +Notmuch-Mutt +------------ + +The shell pipeline executed by notmuch-mutt, which symlinked matched +files to a maildir for mutt to access is replaced with internal perl +processing. This search operation is now more portable, and somewhat +faster. + +Library +------- + +Improve exception handling in the library. This should +largely eliminate terminations inside the library due to uncaught +exceptions or internal errors. No doubt there are a few uncovered +code paths still; please report them as bugs. + +Add `notmuch_message_get_flag_st` and +`notmuch_message_has_maildir_flag_st`, and deprecate the existing +non-status providing versions. + +Move memory de-allocation from `notmuch_database_close` to +`notmuch_database_destroy`. + +Handle relative filenames in `notmuch_database_index_file`, as +promised in the documentation. + +Python Bindings +--------------- + +Documentation for the python bindings is merged into the main +sphinx-doc documentation tree. The merged documentation can be built +with e.g. `make sphinx-html` + +Dependencies +------------ + +We now support building notmuch against Xapian 1.5 (the current +development version). + +Test Suite +---------- + +Test suite fixes for compatibility with Emacs 27.1. + +Build System +------------ + +Man pages are now compressed reproducibly. + +Notmuch 0.30 (2020-07-10) +========================= + +S/MIME +------ + +Handle S/MIME (PKCS#7) messages -- one-part signed messages, encrypted +messages, and multilayer messages. Treat them symmetrically to +OpenPGP messages. This includes handling protected headers +gracefully. + +If you're using Notmuch with S/MIME, you currently need to configure +gpgsm appropriately. + +Mixed-up MIME Repair +-------------------- + +Detect and automatically repair a common form of message mangling +created by Microsoft Exchange (see index.repaired=mixedup in +notmuch-properties(7)). + +Protected Headers +----------------- + +Avoid indexing the legacy-display part of an encrypted message that +has protected headers (see +index.repaired=skip-protected-headers-legacy-display in +notmuch-properties(7)). + +Python +------ + +Drop support for python2, focus on python3. + +Introduce new CFFI-based python bindings in the python module named +"notmuch2". Officially deprecate (but still support) the older +"notmuch" module. + +Dependencies +------------ + +Support for Xapian 1.2 is removed. The minimum supported version of +Xapian is now 1.4.0. + +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. + +Debian +------ + +Drop python2 support from shipped debian packaging. + +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. + +Notmuch 0.29.1 (2019-06-11) +=========================== + +Build +----- + +Fix for installation failure with `configure --without-emacs`. + +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 attachments 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. + +Notmuch 0.28.4 (2019-05-05) +=========================== + +Command line interface +---------------------- + +Fix a spurious error when using `notmuch show --raw` on messages whose +size is a multiple of the internal buffer size. + +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. + +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. + +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 + +New default output format to 3 + + See devel/schemata for details. Users of the structured output + format are reminded of the `--format-version` argument to `notmuch + show` and `notmuch search` which can prevent breakage when the + default format changes. + +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. + +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) =========================== @@ -52,7 +1282,7 @@ Compiling against Xapian 1.4 enables several new features. Support for single argument date: queries - `date:` is equivalent to `date:..`. + `date:` is equivalent to `date:..`. Support for blocking opens @@ -170,7 +1400,7 @@ 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. + The same issue occurred with sort modes. Notmuch 0.22.2 (2016-09-08) =========================== @@ -530,7 +1760,7 @@ Path to gpg is now configurable Emacs ----- -Avoid rendering large text attachements. +Avoid rendering large text attachments. Improved rendering of CID references in HTML. @@ -571,7 +1801,7 @@ Documentation 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 @@ -950,7 +2180,7 @@ Command-Line Interface 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. @@ -1084,7 +2314,7 @@ uses `@{upstream}` instead of `FETCH_HEAD` to track upstream changes. 2. Remove your `NMBGIT` repository (e.g. `mv .nmbug .nmbug.bak`). 3. Use the new `clone` command to create a fresh clone: - nmbug clone http://nmbug.tethera.net/git/nmbug-tags.git + nmbug clone https://nmbug.notmuchmail.org/git/nmbug-tags.git 4. If you had local commits in step 1, add a remote for that repository and fetch them into the new repository. @@ -2160,7 +3390,7 @@ Turn "id:MSG-ID" links into buttons associated with notmuch searches 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 @@ -2195,7 +3425,7 @@ mailing list. 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)