We have enough new changes on master for a new release, and it always seems to motivate people a bit to look at patches. In honor of my plans to spend a few weeks in Montreal, the release schedule will be both relaxed and French-themed: - feature freeze: July 14 (Bastille day) - release July 24 (St. Jean Baptiste day) As always, feel free to tag patches with notmuch::0.25 in nmbug and/or ping me on IRC about things to include There are two big series outstanding from my point of view: gmime-3.0 compatibility and indexing all copies of a message. I'm open to including this, if they get some review, but I don't think I will push them without more feedback. We can worry about NEWS patches during the feature freeze, but in case you want to get started, here is an edited output of git shortlog. It's cool to see new (and old) names here. Damien Cassou (2): Add Emacs' imenu support in notmuch-show and notmuch-search Add indentation to imenu in notmuch-show David Bremner (45): lib: add known broken test for parsing bad dates. lib: clamp return value of g_mime_utils_header_decode_date to >=0 perf-test: use 'eval' in memory_run perf-test: add simple memory tests for notmuch-show perf-test/mem: add simple memory tests for notmuch search rename libutil.a to libnotmuch_util.a lib: bump SONAME to libnotmuch5 lib: replace n_query_search_threads with status returning version lib: replace deprecated n_q_search_messages with status returning version lib: replace deprecated n_q_count_messages with status returning version lib: replace deprecated n_q_count_threads with status returning version lib: make notmuch_query_add_tag_exclude return a status value configure: change default bash completion location to /usr/share test: add known broken test for dump header test: standardize argument order to test_expect_equal_file test: remove debugging "output" test: add 'lkml' corpus emacs/notmuch.el: don't use 'function' as variable name. test: add known broken test for indexing html lib: Add regexp searching for mid: prefix lib: Add regexp expansion for for tags and paths util: convenience function to create gmime stream for stdout cli/reply: direct all output for text format to gmime stream cli/show: use single stream for printf / gmime object output perf-test: add memory test for reply cli/reply: fix two memory leaks, document a third test/thread-naming: remove excess escaping from sender address. configure: add optional support for gmime-3.0 test: define GMime version dependant breakage lib/index: generalize name of indexing filter lib/index: separate state table definition from scanner. lib/index.cc: generalize filter state machine lib/index: add simple html filter Fredrik Fornwall (1): Replace index(3) with strchr(3) Gaute Hope (2): bindings/python: add bindings for notmuch_database_get_revision bindings/python: test python Database.get_revision () Jani Nikula (25): test: print test description also for failing known broken tests test: suppress diff for broken test without V=1 test: remove unused regexp convenience variables test: remove unused filter functions test: remove unused test_external and test_external_without_stderr test: remove unused and no-op --long-tests parameter test: only accept short and long options, not silly in-betweens test: ensure test_begin_subtest has been called before test_expect_* test: drop the implicit prereq check mechanism from test_expect_* test: require test_begin_subtest before test_expect_success test: require test_begin_subtest before test_expect_code cli/show: detangle overloading of params.part for single message display cli/show: remove unused raw member from show parameters struct cli/show: consistently use format_sel for checking the format cli/show: use a table for choosing the formatter cli/show: rename format_sel to simply format cli/show: group --entire-thread option handling into one place cli/show: move formatter structs closer to where they're needed cli: simplify mime node walk cli: do not initialize zero values with designated initializers lib/database: reduce try block scope to things that really need it build: do not export compat functions from lib compat: don't include compat.h from the feature test source build: switch to hiding libnotmuch symbols by default build: visibility=default for library structs is no longer needed John Byrnes (1): emacs: use epg-gpg-program Mikhail (1): tests: add compatibility layer Piotr Trojanek (5): minor whitespace cleanups fix leaks due to missing invocations of va_end remove ineffective assignments fix wrong printf formatting of signed/unsigned integers remove extra space in Emacs prompt Tom Hinton (1): Fix minor mistake where indentation width is ignored Tomi Ollila (12): configure: removed $zlib_(cflags|ldflags) from compat code build support make goals after initial {'', dist, data}clean goal(s) test: atomicity.py: improve exit probability on failure configure: add ${NOTMUCH_SRCDIR} -- absolute path to notmuch source fix out of tree build fix out of tree tests test-databases: use wget or curl to download test databases configure: Be more verbose when compiler sanity checks fail Makefile.local: have all files in release tarball be owned by root test-lib.sh: add "atexit" functionality exit lingering gpg agents at the end of relevant tests emacs: with prefix argument, notmuch-show-stash-date stashes timestamp Ćukasz Stelmach (1): cli/new: Avoid printing "\033[K" to non-terminal output