summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-12build: replace remaining uses of SHA1_FILE0.24David Bremner
oops. If only there was some editor facility that allowed replacing all instances of a string.
2017-03-12debian: changelog stanza for 0.24-1David Bremner
2017-03-12NEWS: set release dateDavid Bremner
2017-03-12version: bump to 0.24David Bremner
2017-03-08debian: changelog stanza for 0.24~rc1-1debian/0.24_rc1-10.24_rc1David Bremner
2017-03-08version: bump version to 0.24~rc1David Bremner
2017-03-07lib: Fix RegexpPostingSourceOlly Betts
Remove incorrect skipping to first match from init(), and add explicit skip_to() and check() methods to work around xapian-core bug (the check() method will also improve speed when filtering by one of these).
2017-03-07NEWS: notmuch-emacs-mua and desktop integrationJani Nikula
2017-03-07NEWS: external subcommand handlingJani Nikula
2017-03-07man: document external subcommand handling in notmuch(1)Jani Nikula
The documentation for this was overlooked when adding the subcommand handling. This seems like the proper place for it.
2017-03-07NEWS for emacsMark Walters
2017-03-05debian: add two new exception symbols.debian/0.24_rc0-10.24_rc0David Bremner
It seems these need to be exported from the library in order for exception handling to work.
2017-03-05NEWS: start NEWS for 0.24David Bremner
2017-03-05debian: start changelog stanza for 0.24~rc0-1David Bremner
2017-03-05version: bump to 0.24~rc0David Bremner
2017-03-04test: shrink T590-thread-breakage test decription to one lineJani Nikula
The test description is used for log output, I think the intention is to keep it as a one-liner. Leave the rest of the long description as a comment.
2017-03-04emacs: compat: backport fix for folding long headers when sendingMark Walters
This backports the fix from emacs master (commit 77bbca8c82f6e553c42abbfafca28f55fc995d00) to notmuch-emacs to wrap long headers. This fixes the test introduced in the previous changeset.
2017-03-04Test: emacs: test for folding long headers.Mark Walters
Headers of more than 998 characters should be folded when sending. However, until recently, emacs did not do this. This adds a (known broken) test for this when sending messages in emacs. We will backport the fix to notmuch-emacs in the next changeset.
2017-03-04lib: query make exclude handling non-destructiveDavid Bremner
We filter added exclude at add time, rather than modifying the query by count search. As noted in the comments, there are several ignored conditions here.
2017-03-04lib: centralize query parsing, store results.David Bremner
The main goal is to prepare the way for non-destructive (or at least less destructive) exclude tag handling. It does this by having a pre-parsed query available for further processing. This also allows us to provide slightly more precise error messages.
2017-03-04lib: use delete[] to free buffer allocated using new[]Jani Nikula
Fix warning caught by clang: lib/regexp-fields.cc:41:2: warning: 'delete' applied to a pointer that was allocated with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete] delete buffer; ^ [] lib/regexp-fields.cc:37:17: note: allocated with 'new[]' here char *buffer = new char[len]; ^
2017-03-03lib: add mid: as a synonym for id:David Bremner
mid: is the url scheme suggested by URL 2392. We also plan to introduce more flexible searches for mid: than are possible with id: (in order not to break assumptions about the special behaviour of id:, e.g. identifying at most one message).
2017-03-03lib: regexp matching in 'subject' and 'from'David Bremner
the idea is that you can run % notmuch search subject:/<your-favourite-regexp>/ % notmuch search from:/<your-favourite-regexp>/ or % notmuch search subject:"your usual phrase search" % notmuch search from:"usual phrase search" This feature is only available with recent Xapian, specifically support for field processors is needed. It should work with bindings, since it extends the query parser. This is easy to extend for other value slots, but currently the only value slots are date, message_id, from, subject, and last_mod. Date is already searchable; message_id is left for a followup commit. This was originally written by Austin Clements, and ported to Xapian field processors (from Austin's custom query parser) by yours truly.
2017-03-03lib: create field processors from prefix tableDavid Bremner
This is a bit more code than hardcoding the two existing field processors, but it should make it easy to add more.
2017-03-02build: use sha256sum instead of sha1sum to sign releasesDavid Bremner
2017-03-01emacs/desktop: update to use notmuch-emacs-mua and handle mailtoJani Nikula
With the mailto: handling in notmuch-emacs-mua, we can update the desktop file to advertize we can be set as the default application to handle email. While at it, add GenericName and Comment to be more informative. With --hello, notmuch-emacs-mua will run (notmuch) if mailto: url is not given.
2017-03-01completion: complete notmuch emacs-muaJani Nikula
With subcommand handling for external commands we can easily complete 'notmuch emacs-mua' using the existing completion system.
2017-02-28Merge branch 'release'David Bremner
Second gnugpg test suite fix
2017-02-28update version to 0.23.70.23.7David Bremner
2017-02-28NEWS: add news for 0.23.7David Bremner
2017-02-28add changelog stanza for 0.23.7-1David Bremner
2017-02-28notmuch-config: ENOENT vs generic handling when file open fails.Tomi Ollila
When opening configuration file fails, ENOENT (file not found) is handled specially -- in setup missing file is ok (often expected), and otherwise user can be informed to run notmuch setup. In any other case the the reason is unknown, so there is no other option but to print generic error message to stderr.
2017-02-28cli/config: don't try to open config file for 'notmuch help'Jani Nikula
The help command does not really need to try to open the config file. So don't.
2017-02-28Merge tag '0.23.6'David Bremner
notmuch 0.23.6 release
2017-02-28cli/show: add content-disposition to structured output message partsJani Nikula
Help the clients decide how to display parts. Test updates by Mark Walters <markwalters1009@gmail.com>. One more test fix by db
2017-02-28cli/show: abstract get content dispositionJani Nikula
Reduce duplication in follow-up work. As a side effect, handle error returns from g_mime_content_disposition_get_disposition() without segfaulting.
2017-02-27test: move GNUPGHOME to TEST_TMPDIRDavid Bremner
We already use this directory for dtach sockets, so it makes sense to put gnupg sockets there as well. There doesn't seem to be a clean way to put a fully functional socket in a different location than GNUPGHOME.
2017-02-27Revert "configure: add test for gpgconf --create-socketdir"David Bremner
This reverts commit 12f7d4e61d30fb9a5c99e128ab1aab0bf069cdb4. Since we're not using gpgconf anymore, drop the unneeded test in configure.
2017-02-27Revert "test: use gpgconf --create-socketdir if available"David Bremner
This reverts commit e7b88e8b0a93ca83d807edc00e0c97af54c5b5f1. It turns out that this does not work well in environments without a running systemd (or some other provider of /run/user)
2017-02-27debian: set upload date and suite0.23.6David Bremner
2017-02-27NEWS: set release dateDavid Bremner
2017-02-26test: make T640 compatible with old C compilersDavid Bremner
Apparently our test system does not use the same flags for compiling tests as it does for compiling notmuch. Make the test compatible with C89. Also remove one unused loop index.
2017-02-26completion: add bash completion for query: and property:Jani Nikula
Add prefix completion for query and property, with value completion for query. Apparently there's no way to get at the available properties in the cli.
2017-02-26emacs: show: stop display of application/* partsMark Walters
Gnus seems to display application/zip and application/tar by default. This doesn't seem desirable so we override it. We only override if the user has not customized mm-inline-override-types themselves.
2017-02-26test: test format version difference between v2 and v3Jani Nikula
Schemata v3 changed message filename field to a list. Test both versions 2 and 3.
2017-02-26cli/show: list all filenames of a message in the formatted outputJani Nikula
Instead of just having the first filename for the message, list all duplicate filenames of the message as a list in the formatted outputs. This bumps the format version to 3.
2017-02-26emacs: use (system-name) instead of system-nameJani Nikula
Fix the deprecation warning: In notmuch-maildir-fcc-make-uniq-maildir-id: emacs/notmuch-maildir-fcc.el:279:53:Warning: ‘system-name’ is an obsolete variable (as of 25.1); use (system-name) instead I've used (system-name) since at least 2011, so it must have been around quite a while.
2017-02-25lib/message.cc: use view number to invalidate cached metadataDavid Bremner
Currently the view number is incremented by notmuch_database_reopen
2017-02-25lib: handle DatabaseModifiedError in _n_message_ensure_metadataDavid Bremner
The retries are hardcoded to a small number, and error handling aborts than propagating errors from notmuch_database_reopen. These are both somewhat justified by the assumption that most things that can go wrong in Xapian::Database::reopen are rare and fatal. Here's the brief discussion with Xapian upstream: 24-02-2017 08:12:57 < bremner> any intuition about how likely Xapian::Database::reopen is to fail? I'm catching a DatabaseModifiedError somewhere where handling any further errors is tricky, and wondering about treating a failed reopen as as "the impossible happened, stopping" 24-02-2017 16:22:34 < olly> bremner: there should not be much scope for failure - stuff like out of memory or disk errors, which are probably a good enough excuse to stop
2017-02-25lib: add _notmuch_database_reopenDavid Bremner
The main expected use is to recover from a Xapian::DatabaseChanged exception.