summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-06-28debian: changelog for 0.27-2debian/0.27-2David Bremner
2018-06-28debian: add build depency on texinfoDavid Bremner
This is needed to provide a makeinfo binary, to build the info version of the documentation.
2018-06-12NEWS: set datedebian/0.27-10.27David Bremner
2018-06-12debian: changelog for 0.27-1David Bremner
2018-06-12version: bump to 0.27David Bremner
2018-06-12doc: document notmuch show --decrypt=stashDaniel Kahn Gillmor
Help users find this new indexed-cleartext workflow.
2018-05-31debian: changelog stanza for 0.27~rc1-1debian/0.27_rc1-10.27_rc1David Bremner
2018-05-31version: bump to 0.27~rc1David Bremner
2018-05-31configure: check for links to/from libdir in ldconfig outputDavid Bremner
If e.g. /lib is a link to /usr/lib, then the latter may not show up in the way we expect in the output of ldconfig. 'test foo -ef bar' checks if foo and bar have the same device and inode numbers. Since (at least in bash, dash, ksh, and zsh) the shell dereferences symlinks before applying the test, this includes both the case where file1 is equal to file2 and the case where one is a symlink to the other.
2018-05-29NEWS: document installation of notmuch-emacs manualDavid Bremner
2018-05-29NEWS: mention notmuch --full-scanDavid Bremner
2018-05-29NEWS: mention thread:{} queriesDavid Bremner
2018-05-29NEWS: deprecate pre-1.4.0 XapianDavid Bremner
We want to give people some heads up before dropping support, since removing a bunch of ifdefs will be a pain to revert.
2018-05-27debian: update symbols for 0.27debian/0.27_rc0-10.27_rc0David Bremner
add two new API symbols
2018-05-27NEWS: start entry for 0.27David Bremner
No content yet.
2018-05-26test: fix hardcoded paths in T050-new.shDavid Bremner
The previous paths will fail almost everywhere.
2018-05-26debian: changelog for 0.27~rc0-1David Bremner
2018-05-26bump version to 0.27~rc0David Bremner
Start the busywork for a new release
2018-05-26docs: add initial documentation for notmuch-tag-jumpDavid Bremner
This is mainly to improve discoverability. It seems that doing variable cross-references is not easy without using some sphinx extension/customization.
2018-05-26doc: initial documentation for notmuch-tree modeDavid Bremner
2018-05-26doc: initial documentation for notmuch-show-modeDavid Bremner
This is pretty minimal, but will hopefully inspire others to contribute more complete documentation. If nothing else, it points out '?'.
2018-05-26debian: install info pages as part of elpa (emacs) packageDavid Bremner
This is a simple way to make the info pages available, since the emacs package system deals with the annoying bits. If there is many people who want the info pages outside of emacs, we could consider a separate binary package, but currently it doesn't seem worthwhile.
2018-05-26doc: install info files in elpa packageDavid Bremner
The duplication of effort in installing into different places seems unavoidable; or more precisely not worth avoiding by more extensive gnu-make-isms.
2018-05-26doc: install build and install info pagesDavid Bremner
All of the man pages are installed as info pages, plus the (unfinished) notmuch-emacs manual
2018-05-26configure: set 'infodir'David Bremner
This turns --infodir from an ignored option into a real one
2018-05-26configure: check for makeinfo and install-infoDavid Bremner
These are needed to build and install (respectively) the info format documentation.
2018-05-26cli/show: enable --decrypt=stashDaniel Kahn Gillmor
Add fancy new feature, which makes "notmuch show" capable of actually indexing messages that it just decrypted. This enables a workflow where messages can come in in the background and be indexed using "--decrypt=auto". But when showing an encrypted message for the first time, it gets automatically indexed. This is something of a departure for "notmuch show" -- in particular, because it requires read/write access to the database. However, this might be a common use case -- people get mail delivered and indexed in the background, but only want access to their secret key to happen when they're directly interacting with notmuch itself. In such a scenario, they couldn't search newly-delivered, encrypted messages, but they could search for them once they've read them. Documentation of this new feature also uses a table form, similar to that found in the description of index.decrypt in notmuch-config(1). A notmuch UI that wants to facilitate this workflow while also offering an interactive search interface might instead make use of these additional commands while the user is at the console: Count received encrypted messages (if > 0, there are some things we haven't yet tried to index, and therefore can't yet search): notmuch count tag:encrypted and \ not property:index.decryption=success and \ not property:index.decryption=failure Reindex those messages: notmuch reindex --try-decrypt=true tag:encrypted and \ not property:index.decryption=success and \ not property:index.decryption=failure
2018-05-26test-lib: add notmuch_show_part for "notmuch show --format=text"Daniel Kahn Gillmor
Thanks to David Bremner for this improved readability!
2018-05-26cli/show: reindex when we learned new session keys about a messageDaniel Kahn Gillmor
If the number of session keys for a given message increased after running "notmuch show" then we just learned something new that might let us do automatic decryption. We should reindex this message using our newfound knowledge. Amended by db: add previously discussed #if block
2018-05-26cli: write session keys to database, if asked to do soDaniel Kahn Gillmor
If the decryption policy is NOTMUCH_DECRYPT_TRUE, that means we want to stash session keys in the database. Note that there is currently no way from the command line to set it this way, though, so it is not yet included in the test suite.
2018-05-26cli: add print_status_message()Daniel Kahn Gillmor
This function is a parallel to print_status_query() or print_status_database(). Thanks to David Bremner for the suggestion!
2018-05-26lib: make notmuch_message_get_database() take a const notmuch_message_t*Daniel Kahn Gillmor
This is technically an API change, but it is not an ABI change, and it's merely a statement that limits what the library can do. This is in parallel to notmuch_query_get_database(), which also takes a const pointer.
2018-05-26properties: add notmuch_message_count_propertiesDaniel Kahn Gillmor
The user can already do this manually, of course, but (a) it's nice to have a convenience function, and (b) exposing this interface means that someone more clever with a _notmuch_string_map_t than i am can write a more efficient version if they like, and it will just accelerate the users of the convenience function.
2018-05-26lib: bump minor versionDavid Bremner
This recognizes the addition of (at least) notmuch_message_get_database to the API.
2018-05-26lib: expose notmuch_message_get_database()Daniel Kahn Gillmor
We've had _notmuch_message_database() internally for a while, and it's useful. It turns out to be useful on the other side of the library interface as well (i'll use it later in this series for "notmuch show"), so we expose it publicly now.
2018-05-22doc: document notmuch new --full-scanDavid Bremner
2018-05-22test: use --full-scan in T050-new.shDavid Bremner
Wherever the test relies on directories being scanned, this option should be used to avoid skipping them due to mtimes on directories matching the database.
2018-05-22test: add tests for notmuch new --full-scanDavid Bremner
Most of these just check that adding the flag does not break existing functionality. The one test that does check the full-scan functionality had to be rewritten to output debugging info.
2018-05-22CLI/new: add full-scan optionDavid Bremner
By default notmuch-new uses directory mtimes to optimize the scanning of directories for new mail. This option allows turning that optimization off e.g. for testing or debugging.
2018-05-14bindings: clean extra file created by ruby extension build systemDavid Bremner
Noticed by dkg; this file seems to be created by building the debian package, and perhaps by other distro package builds.
2018-05-14drop use of register keywordDavid Bremner
The performance benefits are dubious, and it's deprecated in C++11.
2018-05-10build: Allow user to specify ruby executableThomas Schneider
This way, one can build for a different Ruby than $PATH/ruby (e. g. different versions, or Ruby in other paths). Signed-off-by: Thomas Schneider <qsx@chaotikum.eu>
2018-05-09doc: fix notmuch-search exampleDavid Bremner
For some reason the searched tag did not match the displayed results.
2018-05-07doc: document thread subqueriesDavid Bremner
Mention both performance and quoting issues.
2018-05-07lib: define specialized get_thread_id for use in thread subqueryDavid Bremner
The observation is that we are only using the messages to get there thread_id, which is kindof a pessimal access pattern for the current notmuch_message_get_thread_id
2018-05-07perf-test: add simple test for thread subqueriesDavid Bremner
This is not a particularly sensible query, but thread:{date:2010} is a good way to generate fairly large intermediate queries.
2018-05-07lib: add thread subqueries.David Bremner
This change allows queries of the form thread:{from:me} and thread:{from:jian} and not thread:{from:dave} This is still somewhat brute-force, but it's a big improvement over both the shell script solution and the previous proposal [1], because it does not build the whole thread structure just generate a query. A further potential optimization is to replace the calls to notmuch with more specialized Xapian code; in particular it's not likely that reading all of the message metadata is a win here. [1]: id:20170820213240.20526-1-david@tethera.net
2018-05-06Merge tag 'debian/0.26.2-2'David Bremner
uploaded to unstable
2018-05-06debian: re-enable gdb in tests on s390x, ppc64el, armel, mipseldebian/0.26.2-2David Bremner
I was able to verify these 4 arches on Debian porterboxes
2018-05-06debian: mark dtach and gdb as <!nocheck>David Bremner
These are only needed for the test suite. In addition to the functional change, this also helps document their role as build-dependencies.