X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=NEWS;h=c5b7eec97f98d5e5341f664d30d4eb1c988f6fac;hp=3b25925ff3e23e3e7cb26a9a04d578346415bf06;hb=e49398dcada520c03ccd95d6b26900f5aa2d857e;hpb=5a69aa14748162429c43ad5ff3d8b35779fff0d4 diff --git a/NEWS b/NEWS index 3b25925f..c5b7eec9 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,614 @@ +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) =========================== @@ -108,7 +719,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 @@ -226,7 +837,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) =========================== @@ -586,7 +1197,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. @@ -627,7 +1238,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 @@ -1006,7 +1617,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. @@ -1140,7 +1751,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. @@ -2216,7 +2827,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 @@ -2251,7 +2862,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)