Merge tag '0.18_rc0'

notmuch 0.18~rc0 release
building from git: use --abbrev=7 for version string

Users may have set core.abbrev=n, where n != 7 in their git config
file(s) which would give them different than expected version strings
when building notmuch from git. This fixes the commit hash part of
version string to 7 hexadecimal values.
test: add have-man and have-compact in test/.gitignore

Sort the file while at it.
doc: add *.pyc to doc/.gitignore
Merge tag '0.18_rc1'

notmuch 0.18~rc1 release
emacs: allow functions in notmuch-show-stash-mlarchive-link-alist

Some archives may use a more complicated scheme for referring to
messages than just concatenated url and message-id. In particular,
patchwork requires a query to translate message-id to a patchwork
patch id. Allow functions in notmuch-show-stash-mlarchive-link-alist
to facilitate this.

For example, one could use something like this for patchwork.

(lambda (message-id)
  (concat
   "http://patchwork.example.com/patch/"
   (nth 0
	(split-string
	 (car (last (process-lines "pwclient" "search" "-n" "1"
				   "-m" (concat "<" message-id ">"))))))))
Merge tag '0.18'

notmuch 0.18 release
Merge in a few Debian commits.
Merge branch 'release'

bugfix release being built up on release.
ruby: Add wrapper for notmuch_query_count_threads
emacs: Correct the documentation for `notmuch-search-line-faces'.

The implementation and documentation for `notmuch-search-line-faces'
disagreed in how elements in the list were merged. Correct the
documentation to match the implementation (that is, the earlier
elements in the list have precedence over later elements).
Merge branch 'release'

A point release is slowly being built on branch release. Merge those
changes into master.
build: don't overwrite DISTCLEAN in performance-test

This might have worked once for some fixed order of including
makefiles, but it is clearly wrong now.
build: remove .tar.gz.tmp files in clean

Most people won't see these, but they annoy anyone running release
or pre-release targets.
build: add dataclean

It turns out to be inconvenient to delete the downloaded datafiles with
distclean, so I propose a new target which does that instead.

The closest conventional target is 'maintainer-clean'; the difference
here is that having the original source tarball is not enough to
reconstruct these files.
Merge branch 'release'

Merge in a few more commits towards 0.18.1
Merge branch 'release'

still painfully slowly assembling 0.18.1
Merge branch 'release'

Austin's termpos patches and Felipe's zlib.pc workaround
emacs: Forwarded messages should not have modified buffers

When the user begins forwarding a message, the resulting composition
buffer should not be marked as modified, in order that it can
immediately be killed without prompting.
Merge tag '0.18.1_rc0'

notmuch 0.18.1~rc0 release