summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-06gitignore: add bindings/python-cffi/_notmuch_config.py0.35David Bremner
This is generated by configure and should not be committed.
2022-02-06version: bump to 0.35David Bremner
2022-02-06NEWS: set release date for 0.35David Bremner
2022-02-06debian: start changelog for 0.35David Bremner
2022-02-05NEWS: remaining items for 0.35 releaseDavid Bremner
These are my best guesses based on git commit messages.
2022-01-31NEWS: emacs/notmuch-logo.svg is there in 0.35Tomi Ollila
2022-01-31NEWS: my changes for 0.35David Bremner
2022-01-29debian: changelog for 0.35~rc0-2debian/0.35_rc0-2archive/debian/0.35_rc0-2David Bremner
2022-01-29debian: add missing install file for notmuch-docdebian/0.35_rc0-1archive/debian/0.35_rc0-1David Bremner
This was missed from commit 11f03c87a205ffa99ff5e7b301b03bf996a8d562
2022-01-29NEWS: add stub for 0.350.35_rc0David Bremner
2022-01-29debian: add changelog for 0.34~rc0-1David Bremner
2022-01-29lib: bump minor version to 6.David Bremner
One new status value and one configuration value added.
2022-01-29version: bump to 0.35~rc0David Bremner
Start release process for 0.35
2022-01-29debian: package HTML docsDavid Bremner
This is particularly useful for the docs for the notmuch2 python bindings, which are otherwise not packaged.
2022-01-29doc: replace :math: for subscripts in notmuch-sexp-queries(7)David Bremner
Sphinx pulls in mathjax to do :math:, which complicates viewing the html version offline. The direct :sub: is supported directly in html.
2022-01-27lib: strip trailing '/' from pathnames (sexp queries).David Bremner
This changes makes the sexp query parser consistent with the infix one in ignoring trailing '/'. Here we do a bit better and ignore any number of trailing '/'.
2022-01-27test: add multiple path, folder sexp query testsDavid Bremner
This is mainly to make sure we get trailing / removal correct. Also add regression test for path: in the infix parser matching the existing one for folder:.
2022-01-27lib: drop trailing slash for path and folder searches (infix)David Bremner
This resolves an old bug reported by David Edmondson in 2014. The fix is only needed for the "boolean" case, as probabilistic / phrase searching already ignores punctuation. This fix is only for the infix (xapian provided) query parser. [1]: id:cunoasuolcv.fsf@gargravarr.hh.sledj.net
2022-01-27test/sexp: tests for path, folder, including trailing '/' (sexp)David Bremner
This duplicates the bug reported in [1], as well as adding some simple regression tests for 'path' and 'folder' searches which were previously missing for sexp syntax. [1]: id:cunoasuolcv.fsf@gargravarr.hh.sledj.net
2022-01-27test: known broken tests for trailing / in path search (infix)David Bremner
In [1], David Edmondson observed that the trailing / added by many completion mechanisms causes path searches to silently fail. This test reproduces that bug for both `path:' and `folder:' searches. [1]: id:cunoasuolcv.fsf@gargravarr.hh.sledj.net
2022-01-27test: sanitize generated message files namesDavid Bremner
It is fragile to encode the generated names into tests, as it makes tests break when e.g. new tests are added. There is a possibility that this will hide certain failures; in that case meaningful filenames should be chosen for the generated messages.
2022-01-26lib/parse-sexp: handle lastmod queries.David Bremner
This particular choice of converting strings to integers requires C++11.
2022-01-26test/sexpr-search: add known broken tests for lastmod queriesDavid Bremner
These are loosely modelled on the tests just above for date ranges, since the error conditions are similar. Some ideas also borrowed from T570-revision-tracking.
2022-01-26lib/parse-sexp: support actual date queries.David Bremner
The default argument processing overlaps somewhat with what is already done in _notmuch_date_strings_to_query, but we can give more specific error messages for the s-expression context. The extra generality of _sexp_parse_range will be useful when we implement additional range prefixes (at least 'lastmod' is needed).
2022-01-26lib/date: factor out date range parsing.David Bremner
This will allow re-using the same logic in the s-expression parser.
2022-01-26lib/parse-sexp: support zero argument date queriesDavid Bremner
These are not too practical, although they may simplify some user query generation code. Mainly this adds a new prefix keyword to the parser.
2022-01-26test/search: add known broken tests for 'date' prefixDavid Bremner
This is documented, but apparently not implemented. Add tests for planned supported syntax and error messages.
2022-01-26emacs: use cached encoded copy for fccDavid Bremner
This fixes the bug reported by dkg in [1]. The movement of the call to n-m-setup-message-for-saving is so the cleanup of Fcc headers happens in the encoded version (otherwise Fcc headers may be saved to disk). [1]: id:87k1zm225v.fsf@fifthhorseman.net
2022-01-26test/emacs: known broken test for matching fcc and sent messageDavid Bremner
Based on the method outlined by Daniel Kahn Gillmor in id:87k1zm225v.fsf@fifthhorseman.net. With a delay of 0.2 seconds the test becomes flaky on my machine. With a 1 second delay it fails consistently for more than 1600 iterations.
2022-01-26test: define test_expect_equal_message_bodyDavid Bremner
This is a relatively simple sed invocation, but rather than write a comment everywhere, give it a descriptive name.
2022-01-26test/emacs: match mml settings in emacs_{fcc,deliver}_messageDavid Bremner
This will allow the sending of signed messages via smtp in the test suite.
2022-01-25doc: document new option `show.extra_headers`David Bremner
Increase discoverability by cross referencing from the notmuch-show manual entry to the notmuch-config manual entry.
2022-01-24CLI/setup: special case single item listsDavid Bremner
This matches the heuristic used by "notmuch config set" to decide if something is a list. This change fixes the bug reported at [1]. [1]: id:6O3LTUhoXlrnkPWCtPJCP4cagU7mFVEdyTpcC_37BoSzStlARXDBa7oczy6hB0jyjGjBQvgj_jFV58cw0aNx-jUg1h1O-FQ7820k68C0X4M=@protonmail.com
2022-01-24test/setup: add known broken test for single itemsDavid Bremner
In [1] Ian observed that notmuch setup was inconsistent with notmuch config set when adding single items, namely adding an unneeded semi-colon at the end. This test replicates that bug. [1]: id:6O3LTUhoXlrnkPWCtPJCP4cagU7mFVEdyTpcC_37BoSzStlARXDBa7oczy6hB0jyjGjBQvgj_jFV58cw0aNx-jUg1h1O-FQ7820k68C0X4M=@protonmail.com
2022-01-23emacs: customizable names for search buffersjao
Customizable names for buffers presenting search results, via two custom variables (notmuch-search-buffer-name-format and notmuch-saved-search-buffer-name-format), defaulting to values currently used for plain searches and including too tree and unthreaded search buffers. Amended by db: spelling fix.
2022-01-23emacs: define, use option :disable-excludes for n-h-query-countsDavid Bremner
Initially only use in notmuch-hello-insert-alltags. This is a more narrow resolution of [1], which (unlike [2]) does not disable exclude processing for regular saved searches. [1]: id:87wox1vovj.fsf@len.workgroup [2]: id:20220105010606.2034601-2-david@tethera.net
2022-01-23Revert "emacs: use --exclude=false when checking for empty searches"David Bremner
Revert commit 8370e3cfe2dd8a79323613c2bbf2f11db6134dac, and remark the corresponding test as broken. Also update the expected output of the broken test to show excludes active in the user defined saved searches.
2022-01-22lib/database: delete stemmer on destroyDavid Bremner
Commit [0] left the stemmer object accessible, but did not add de-allocation code to notmuch_database_destroy. This commit corrects that oversight. Leak originally reported by Austin Ray [1]. [0]: 3202e0d1feba1ab955ba1c07098c00208f8f0ada [1]: id:20220105224538.m36lnjn7rf3ieonc@athena
2022-01-22lib/config: move g_key_File_get_string before continueDavid Bremner
In [1] Austin Ray reported some memory leaks in notmuch_database_open. One of those leaks is caused by jumping to the next key without freeing val. This change avoids that leak. [1]: id:20220105224538.m36lnjn7rf3ieonc@athena
2022-01-22test: add known broken test for memory leaks in openDavid Bremner
This duplicates the memory leaks reported in [1] [1]: id:20220105224538.m36lnjn7rf3ieonc@athena
2022-01-22configure: check for ASAN supportDavid Bremner
This will allow conditionally running tests that use the address sanitizer.
2022-01-20emacs: use --exclude=false when counting total messagesDavid Bremner
Even if a user excludes a large fraction of their messages, they still nonetheless exist and are searchable.
2022-01-20emacs: use --exclude=false when checking for empty searchesDavid Bremner
In particular tags that only occur on otherwise excluded messages do not show up in "All tags" without this change. The reported numbers _do_ take excludes into account, so it is possible that searches (e.g. the aformentioned tags) will show up with a count of zero.
2022-01-20test/emacs: add known broken test for hidden tagsDavid Bremner
Gregor Zattler observed that tags could be unintentionally hidden in the "All tags" view, and Tomi Ollia worked out [2] that the issue was tags that only occured on excluded messages. This test reproduces that bug. [1]: id:87wox1vovj.fsf@len.workgroup [2]: id:m28t9faaim.fsf@guru.guru-group.fi
2022-01-18CLI: print extra headers only for non-repliesDavid Bremner
If in the future we decide to output extra headers for replies, this should be controlled by a separate configuration option.
2022-01-18test/emacs: known broken test for reply with extra headers set.David Bremner
Although it makes sense for the extra headers to be added to the copy of the message headers included in the sexp/json, it is a bit surprising for them to show in the new message constructed for the reply, especially when, as here, they are always missing/empty.
2022-01-18CLI: print extra headers in structured outputDavid Bremner
This is based on a patch from Johan Parin [1], which is in turn responding to a bug report / feature requiest from Jan Malkhovski. The update to the structured output documented in schemata is intended to be upward compatible, so the format version stays the same [1]: id:20191116162723.18343-1-johan.parin@gmail.com [2]: id:87h8sdemnr.fsf@oxij.org
2022-01-18lib/config: add known config key "show.extra_headers"David Bremner
Used in a following commit to enable including extra headers beyond the default in structured output.
2022-01-18CLI: stash pointer to database in sprinter structsDavid Bremner
We already use an allocated (and presumably open) database as a talloc context. Keeping the pointer in the allocated struct will allow us to e.g. interrogate the configuration in a sprinter function without threading the database all the way through the various levels of function.
2022-01-16test: fix deprecation warning in symbol-testDavid Bremner
Reduce the amount of noise in the build log.