Commit graph

4157 commits

Author SHA1 Message Date
Austin Clements
8a443121c6 test: Fix from/to search test queries
Two of the search tests for "from" and "to" queries were clearly
trying to search for prefixed phrases, but forgot to shell quote the
phrases.  Fix this by quoting them correctly.
2014-06-18 17:53:29 -03:00
Tomi Ollila
f0ad36cb7f emacs install: make sure all components to be installed are there
`make install-emacs` will copy $(emacs_sources), $(emacs_images) and
$(emacs_bytecode) to their target directories. $(emacs_bytecode) was
already a prerequisite of make install-emacs as these obviously needed
to be build. Until a while ago all of $(emacs_sources) was available
in the repository, but now it includes `notmuch-version.el` which
is generated. In the future we may have generated emacs images too.
2014-06-15 15:40:51 -03:00
David Bremner
435cd249a0 debian: update notmuch-emacs for emacsen-common 2.0.8
- redo install/remove scripts from new samples
- symlink .el files properly
- add depends instead of conflicts
2014-06-14 08:53:56 -03:00
David Bremner
17e3ef18ae debian: tighten dependency of python packages on libnotmuch.
Using (>= ${source:Version}) allows newer versions of the library with
the same SONAME.
2014-06-14 07:20:56 -03:00
Jani Nikula
0cc0144875 lib: resurrect support for single-message mbox files
This is effectively a revert of

commit 6812136bf5
Author: Jani Nikula <jani@nikula.org>
Date:   Mon Mar 31 00:21:48 2014 +0300

    lib: drop support for single-message mbox files

The intention was to drop support for indexing new single-message mbox
files (and whether that was a good idea in the first place is
arguable). However this inadvertently broke support for reading
headers from previously indexed single-message mbox files, which is
far worse.

Distinguishing between the two cases would require more code than
simply bringing back support for single-message mbox files.
2014-06-13 22:59:04 -03:00
David Bremner
2d722bf032 test: use --quick when starting emacs.
At least in emacs24, this removes the "site-lisp" directories from the
load path in addition to enforcing --no-site-lisp --no-init-file.

This works around a slightly mysterious bug on Debian that causes
test-lib.el not to load when there is cl-lib.el(c) in some site-lisp
directory.  It should be harmless in general since we really don't
want to load any files from addon packages to emacs.
2014-06-13 22:55:14 -03:00
Felipe Contreras
90f9a5e65e build: fix order of rpath
In my system `pkg-config --libs talloc` returns
'Wl,-rpath,/usr/lib -ltalloc' (probably wrongly) which causes the final
LDFLAGS to be something like '-Wl,-rpath,/usr/lib
-Wl,-rpath,/opt/notmuch/lib', which causes the RUNPATH to be
'/usr/lib:/opt/notmuch/lib', so basically defeating the whole purpose of
RUNPATH.

I noticed this when my /opt/notmuch/bin/notmuch (0.17) started updating
the database after I updated the system (which updated the system's
notmuch). This shouldn't happen.

Let's move the RUNPATH flags before other external flags have a chance of
screwing the build.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2014-05-28 09:50:04 -03:00
Amadeusz Żołnowski
175144f6ad Unset html_static_path in Python bindings docs
html_static_path is a kind of source directory and it was set to
destination directory (../html) which caused infinite recursion with
Sphinx 1.2 and above.
2014-05-28 09:46:02 -03:00
W. Trevor King
ebf4aaa0f8 doc/conf.py: Remove _static from html_static_path
Avoid:

  $ make HAVE_SPHINX=1 sphinx-html
  python ./doc/mkdocdeps.py ./doc doc/_build doc/docdeps.mk
  sphinx-build -b html -d doc/_build/doctrees -q ./doc doc/_build/html
  Making output directory...
  WARNING: html_static_path entry '/home/wking/src/notmuch/notmuch/doc/_static' does not exist

because we have no static source in doc/_static.
2014-05-28 09:45:45 -03:00
Mark Walters
83f531ad7e emacs: make sure tagging on an empty query is harmless
Currently notmuch-tag throws a "wrong-type-argument stringp nil" if
passed a nil query-string. Catch this and provide a more useful error
message. This fixes a case in notmuch-tree (if you try to tag when at
the end of the buffer).

Secondly, as pointed out by David (dme)
`notmuch-search-find-stable-query-region' can return the query string
() if there are no messages in the region. This gets passed to notmuch
tag, and due to interactions in the optimize_query code in
notmuch-tag.c becomes, in the case tag-change is -inbox, "( () ) and
(tag:inbox)". This query matches some strange collection of messages
which then get archived. This should probably be fixed, but in any
case make `notmuch-search-find-stable-query-region' return a nil
query-string in this case.

This avoids data-loss (random tag removal) in this case.
2014-05-27 20:40:04 -03:00
David Bremner
a33ec9ce40 test: allow pending break points in atomicity script.
This seems to fix problems with the symbol rename not being defined
at startup on at least OS/X and some Debian Linux architectures.
2014-05-18 06:32:14 +09:00
Charles Celerier
ca34ac1440 test/Makefile.local: Added configured TALLOC_LDFLAGS.
The linking to talloc is hard-coded in the testing Makefile. This patch
causes the linking to talloc to be done according to how TALLOC_LDFLAGS
was configured.

Signed-off-by: Charles Celerier <cceleri@cs.stanford.edu>
2014-05-18 06:31:55 +09:00
David Bremner
f3ee655b49 notmuch-dump: use fsync instead of fdatasync
Since the file size will have changed, there is no performance benefit
to calling fdatasync.  Somewhat surprisingly, using fdatasync
apparently causes portability problems on FreeBSD.
2014-05-18 06:31:15 +09:00
David Bremner
f6b54fbcf6 debian: disable atomicity tests on armel.
Another temporary fix for build problems.
2014-05-08 14:28:13 +09:00
David Bremner
8e82a41c90 debian: disable atomicity tests on armhf
In fact a fix for these tests is currently being reviewed, but I want
to roll it together with a few other portability fixes for a point
release.
2014-05-08 08:29:15 +09:00
David Bremner
877533ade5 debian: changelog stanza for 0.18
plagiariaze my own summary from upstream NEWS
2014-05-06 16:27:29 +09:00
David Bremner
b661b87801 version: bump to 0.18
debian changelog to be done seperately.
2014-05-06 16:24:17 +09:00
David Bremner
5535453495 build: use UPSTREAM_TAG and not VERSION to generate tarball
The latter can have "~" in it, which is not legal for a git tag.
2014-05-04 08:11:35 +09:00
David Bremner
2983a85eed doc/doxygen.cfg: bump version to 0.18 2014-05-04 07:38:21 +09:00
David Bremner
1f2bb88e92 version: bump for 0.18~rc1
Doing all of the needed version bumps in one commit, and do a
complete, if minimal debian changelog entry
2014-05-04 07:34:00 +09:00
Felipe Contreras
cc8c213bbc vim: improve the way messages are sent
We want the proper encoding and content-type to be set when sending the
mail, but human-readable plain-text for composing. So split the code in
two parts: the presentation and the transport conversion.

This fixes an issue while sending non-ascii mails to strict servers; the
mail needs to be encoded.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2014-05-03 06:00:22 +09:00
Paul Roberts
468deca60c vim: make the html handler configurable
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2014-05-03 05:59:58 +09:00
Felipe Contreras
2fee62fd1f vim: fix count_threads variable check
It never really worked; in Ruby only 'nil' and 'false' evaluate to
false, therefore the statement '0 : true ? false' returns true, so it
doesn't matter if notmuch_folders_count_threads = 0, count_threads would
be true.

We need to check specifically if the value is 1 or 0.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2014-05-03 05:59:38 +09:00
Jani Nikula
697d6b5a47 NEWS: make it explicit that wildcard matching is no longer supported
Wildcard matching was a feature of the probabilistic prefix, and we no
longer have it for the boolean prefix. Also note that top-level folder
can now be searched.
2014-05-03 05:33:09 +09:00
Jani Nikula
02fabf31df NEWS: insert and new refuse invalid tags 2014-05-02 07:28:43 +09:00
Jani Nikula
c070bee7ea NEWS: message piping working directory 2014-05-02 07:28:12 +09:00
Jani Nikula
292a052cab NEWS: emacs: push mark before signature on reply 2014-05-02 07:27:00 +09:00
Jani Nikula
d8bf03710e NEWS: cli exit status codes 2014-05-02 07:25:24 +09:00
Jani Nikula
e0c7e49307 NEWS: notmuch insert respects maildir.synchronize_flags 2014-05-02 07:19:50 +09:00
David Bremner
708299ac53 NEWS: add overview section for 0.18
This mentions the things I (subjectively) thought were most likely to
either annoy people or make it worth upgrading.
2014-05-01 14:37:54 +09:00
Jani Nikula
e925d88b1b NEWS: message header parser changes 2014-04-28 11:02:28 +09:00
Jani Nikula
1156aa9bd9 NEWS: mbox files are no longer supported 2014-04-28 11:01:59 +09:00
Jani Nikula
8ea4eef298 NEWS: folder:, path:, and database upgrade
Related news together.
2014-04-28 11:01:46 +09:00
Jani Nikula
3ff5f2f430 NEWS: replies to encrypted messages encrypted by default 2014-04-28 11:01:10 +09:00
Tomi Ollila
f7e13246b4 NEWS: Ido initialization for Emacs 23.[123] 2014-04-27 07:11:11 +09:00
David Bremner
95aa988a06 doc: remove conf.pyc on clean
This build artifict messes up the packaging process for (at least)
Debian if not removed on clean.
2014-04-22 14:24:04 +09:00
David Bremner
d879c47ff1 python: bump version 2014-04-22 09:40:28 +09:00
David Bremner
070f44f847 NEWS: bump version
As usual, we'll just edit the version in place for release candidates.
2014-04-22 09:40:28 +09:00
David Bremner
48223d4f18 debian: NEWS item about database upgrade 2014-04-22 09:40:28 +09:00
David Bremner
3a98e9472b debian: changelog stanza for 0.18~rc0-1
- make versions match to pacify release-checks.sh
- close a few more bugs.
- fix one HTMLism
2014-04-22 09:40:28 +09:00
David Bremner
b30ad5c104 version: bump to 0.18~rc0
Start the promised feature freeze
2014-04-22 07:00:29 +09:00
Austin Clements
827a69f639 doc: Simplify and clarify notmuch show --format=sexp description
Previously, this was a verbatim copy of the --format=json text.
Change it to instead reference the JSON text and actually describe how
the S-expression format works.
2014-04-21 21:51:54 +09:00
Austin Clements
a39a69ca0f doc: Clarify charset encoding of JSON output 2014-04-21 21:51:35 +09:00
Austin Clements
3cd00fdb8f doc: Fix minor formatting issues in notmuch-show.rst
There were some extra line breaks and missing periods.
2014-04-21 21:51:08 +09:00
Austin Clements
56871c628b doc: Clarify notmuch show --format=raw description
In addition to being generally more precise, this is explicit that
there is no charset conversion.
2014-04-21 21:50:57 +09:00
Mark Walters
ae2888015e emacs: hello: bugfix for saved searches defcustom
The recent changes for saved searches introduced a bug when notmuch
was loaded after the saved search was defined. This was caused by a
utility function not being defined when the defcustom was loaded.

Fix this by moving some code around: the defcustom is moved into
notmuch-hello (which is a more natural place anyway), and the utility
functions are moved before the defcustom in notmuch-hello. We are
rather constrained as the defcustom for saved searches is the first
variable in the notmuch-hello customize window; to avoid moving this
customize the defcustom needs to be the first defcustom in
notmuch-hello, and the utility functions come before that.

This patch also renames one of the utility functions from
notmuch--saved-searches-to-plist to
notmuch-hello--saved-searches-to-plist (as it is purely local to
notmuch-hello) and corrects a couple of typo/spelling mistakes pointed
out by Tomi.
2014-04-21 21:48:41 +09:00
W. Trevor King
c3d54c4b54 doc/prerst2man.py: Fix 'os.system' -> 'system' typo
Avoid:

  $ make HAVE_SPHINX=0 HAVE_RST2MAN=1 build-man
  python ./doc/prerst2man.py ./doc doc/_build/man
  Traceback (most recent call last):
    File "./doc/prerst2man.py", line 65, in <module>
      os.system('set -x; rst2man {0} {1}/{2}.{3}'
  NameError: name 'os' is not defined
  make: *** [doc/_build/man/man1/notmuch.1] Error 1

by using system directly.  We don't need the 'os.' namespacing,
because the function was imported with:

  from os import makedirs, system
2014-04-21 21:32:03 +09:00
W. Trevor King
334f247d9f doc/prerst2man.py: Use Python-3-compatible octal notation
Python 3 only supports the 0oXXX notation for octal literals [1,2],
which have also been supported in 2.x since 2.6 [2].

[1]: https://docs.python.org/3.0/whatsnew/3.0.html#integers
[2]: http://legacy.python.org/dev/peps/pep-3127/
2014-04-21 21:31:54 +09:00
W. Trevor King
427b3db243 doc/mkdocdeps.py: Use "with" statement for the output file
Before this patch, the open was unnecessarily early and relied on the
process cleanup to close.  Neither one of these was a real problem,
but PEP 343's context managers (which landed in Python 2.5) make
proper cleanup very easy.

[1]: http://legacy.python.org/dev/peps/pep-0343/
2014-04-21 21:31:45 +09:00
W. Trevor King
b10b12da89 doc/mkdocdeps.py: Convert execfile to import
excefile is gone in Python 3 [1].  Instead of exec-ing the
configuration, it's easier to insert the source directory in Python's
path [2], and just import the configuration.  With this change,
mkdocdeps.py is compatible with both Python 2 and 3.

[1]: https://docs.python.org/3.0/whatsnew/3.0.html#builtins
[2]: https://docs.python.org/3/library/sys.html#sys.path
2014-04-21 21:31:36 +09:00