X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=NEWS;h=a88d31accb98f3b227a5de321caa14bae770e090;hp=551862222abe9f2c85f2b41428280eaa3feb5eb6;hb=f25e48e0234a050cab38306a066605a0f8bd3d12;hpb=502d42f964c4b9c6f454805ca9d1e2bf4e52caef diff --git a/NEWS b/NEWS index 55186222..a88d31ac 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,481 @@ -Notmuch 0.29 (UNRELEASED) +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 @@ -20,21 +497,40 @@ 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 +--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. +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, @@ -58,6 +554,13 @@ 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) =========================== @@ -80,7 +583,7 @@ Build System ------------ Serialize calls to sphinx-build to avoid race condition. -` + Notmuch 0.28.2 (2019-02-17) ===========================