Age | Commit message (Collapse) | Author | Files | Lines |
|
Changelog:
What's new in notmuch 0.37
=========================
Library
-------
Fix uninitialized field in message objects.
Improve exception handling and error propagation for message objects.
Sexp Queries
------------
Add one sided lastmod ranges for sexp queries.
Expand macro parameters inside regex and wildcard modifiers.
Command Line Interface
----------------------
`notmuch help` now works for external commands.
`NOTMUCH_CONFIG` is now passed to external commands and hooks.
Promote the development tool `nmbug` to a user facing tool
`notmuch-git`. See notmuch-git(1) for details.
Emacs
-----
The function `notmuch-mua-mail` now moves point depending on the
provided arguments.
Restrict what mime types are inlined in replies and on refresh.
The functions in notmuch-query.el are now obsolete and may be removed
in a future version of Notmuch.
Add some controls for lazy display of message bodies (See "Dealing
with large messages and threads" in the notmuch-emacs documentation).
Allow the user to select (with '%') a different duplicate message file
to display.
Use `message-dont-reply-to-names` in `notmuch-message-mode`.
Support custom header-line format for notmuch-show mode.
|
|
|
|
Fix packaging with notmuch-emacs option.
|
|
|
|
|
|
Notmuch 0.36 (2022-04-25)
=========================
Library
-------
Add the `sexp` prefix to the infix (traditional) query parser. This
allows specific subqueries to be parsed by the sexp parser (with
appropropriate quoting). See `notmuch-search-terms(7)` for details.
Add another heuristic to regexp fields to prevent phrase parsing of
bracketed sub-expressions.
Command Line Interface
----------------------
Envelope from ("From ") headers are now escaped as X-Envelope-From: in
input to `notmuch-insert`. This prevents creating mbox files when
calling `notmuch-insert` from e.g. `postfix`.
Python (CFFI) Bindings
----------------------
Use the `config_pairs` API in ConfigIterator. This returns all
matching key-value pairs, not just those that happen to be stored in
the database.
Documentation
-------------
Reorganize documention for `notmuch-config`. Add a few links from
other man pages.
Emacs
-----
Bind the usual undo key sequences to new command
"notmuch-tag-undo". This allows transparent undo of tagging
operations.
Tests
-----
Fix smime.4 with newer gmime. Unset `XDG_DATA_HOME` and `MAILDIR` for tests.
New add-on tool: notmuch-web
-----------------------------
The new devel/ tool `notmuch-web` is a very thin web client. It
supports a full search interface for one user: there is no facility
for multiple users provided today. See the notmuch-web README file
for more information.
Be careful about running it on a network-connected system: it will
expose a web interface that requires no authentication but exposes
your mail store.
|
|
|
|
|
|
Notmuch 0.35 (2022-02-06)
=========================
Library
-------
Implement the `date` and `lastmod` fields in the S-expression parser.
Ignore trailing `/` for pathnames in both query parsers.
Rename configuration option `built_with.sexpr_query` to
`built_with.sexp_queries`.
Do not assume a default mail root in split (e.g. XDG) configurations.
Fix some small memory leaks in `notmuch_database_open_with_config`.
CLI
---
Improve handling of leading/trailing punctation and space for
configuration lists.
Only ignore `.notmuch` at the top level in `notmuch new`.
Optionally show extra headers in `notmuch show`. See
`show.extra_headers` in notmuch-config(1).
Emacs
-----
Drop `C-TAB` binding in hello mode, document `backtab`.
Fix visual glitch in search mode by running `notmuch-search-hook`
lazily.
Don't add space to completion candidates, improves compatibility with
third party completion frameworks.
Make citation formating more robust against whitespace.
Use `--excludes=false` when generating the 'All tags' section.
Use cached copy of message body for `Fcc`, avoiding variant bodies for
signed and/or encrypted messages.
Add notmuch-logo.svg and use it in notmuch-hello view, replacing
the .png version.
Make header line in show buffers optional.
Add customizable names for search buffers.
Build
-----
Fix out-of-tree build for `python-cffi` bindings.
Rearrange position of {C,CXX,CPP,LD}FLAGS, prevent some clashes with
installed version of notmuch.
Ignore more configure options.
Test Suite
----------
Replace some uses of `gdb` in the test suite with `LD_PRELOAD` based
shims.
Use `--with-colons` for gpgsm, fix compatibility with newer gnupg.
Python bindings
---------------
Add `matched` property to message objects.
Users are reminded that the old python bindings in bindings/python are
deprecated; this will probably be the last major release that ships
them.
Completion
----------
Use `database.mail_root` for path completion in bash/zsh.
|
|
Changelog:
What's new in notmuch 0.34.3
=========================
Library
-------
Do not crash when presented with a .notmuch directory without a
xapian/ subdirectory.
Python Bindings (notmuch2)
--------------------------
Database constructor now searches for configuration by default. Pass
`config=Database.CONFIG.EMPTY` to disable.
The `Message.replies()` method now returns OwnedMessage objects, to
prevent certain memory de-allocation errors.
Fix for importing `notmuch2` module when building bindings
documentation.
|
|
Notmuch 0.34.2 (2021-12-09)
===========================
Library
-------
Fix a bug that wrongly resolved conflict between the `database_path`
parameter to `notmuch_database_open_with_config` and configuration
item `database.path` in favour of the latter.
Python Bindings (notmuch2)
--------------------------
When building the documentation for the `notmuch2` python module,
import from the built module, not a system wide installed one.
The notmuch2.Database constructor now uses the library function
`notmuch_database_open_with_config` to support the same configuration
and database location options as the library does.
Fix some unprintable exception objects.
|
|
|
|
Notmuch 0.34.1 (2021-11-03)
===========================
Library
-------
Fix for deallocation and nulling of output parameter for
notmuch_database_{open_with,create_with,load}_config when errors
occur. This change fixes a potential use-after-free bug that has been
present since 0.32. This release also improves the documentation of
status returns for the same 3 functions.
|
|
* Buildlink to textproc/sfsexp for S-expression search.
Changelog:
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.
|
|
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
The following distfiles were unfetchable (possibly fetched
conditionally?):
./mail/qmail/distinfo netqmail-1.05-TAI-leapsecs.patch
|
|
|
|
|
|
|
|
If this is here, the build on NetBSD breaks with
In file included from gmime-filter-reply.c:21:
gmime-filter-reply.h:22:10: fatal error: gmime/gmime-filter.h: No such file or directory
22 | #include <gmime/gmime-filter.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
after
Checking for available C compiler warning flags...
-Wall -Wextra -Wwrite-strings -Wmissing-declarations
./configure: perl_absolute: parameter not set
./configure: perl_absolute: parameter not set
Disable test target as well.
|
|
Fix a build issue on SunOS (or likely any host that is already running a
gpg-agent which confuses the gpgme configure tests), and fix test target.
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.
|
|
Changelog:
Library
-------
Correct documentatation 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.
|
|
Changelog:
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.
|
|
Changelog:
What's new in notmuch 0.32.2
=========================
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`.
|
|
|
|
Changelog:
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`.
|
|
Changelog:
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`.
|
|
Python bindings are not installed by this package.
Bump PKGREVISION.
|
|
Changelog:
Notmuch 0.31.4 (2021-02-18)
===========================
Library
-------
Fix include bug triggered by glib 2.67.
Test
----
Fix race condition in T568-lib-thread.
|
|
Changelog:
What's new in notmuch 0.31.3
=========================
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
|
|
For the Python 3.8 default switch.
|
|
Changelog:
What's new in notmuch 0.31.2
=========================
Build
-----
Catch one more occurence of "version" in the build system, which
caused the file to be regenerated in the release tarball.
What's new in notmuch 0.31.1
=========================
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.
|
|
Changelog:
What's new in notmuch 0.31
=========================
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.
|
|
Changelog:
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`.
|
|
Not only cleaner, but also fixes a build issue seen on macOS likely related to
variable definition ordering, where GPG was not set correctly and ended up
trying to use a non-existent "gpg" command. This change has the added benefit
of using the full path to the gpg binary instead of relying on PATH.
|
|
|
|
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.
|