Commit graph

5011 commits

Author SHA1 Message Date
Keith Amidon
4bf3bb31dd Expand docstrings about fcc using notmuch-insert
This commit expands docstrings for notmuch-fcc-dirs and
notmuch-maildir-fcc-with-notmuch-insert to describe how quoted strings
are processed and make the ability to configure sent folders containing
whitespace more discoverable.
2016-10-22 12:28:13 -03:00
Tomi Ollila
c008dd1352 test: use vt100 as "smart" terminal for known dumb/unknown terminals
Otherwise use whatever user environment has set for TERM so
that there is more chance to test on users' actual environments.
2016-10-22 12:18:43 -03:00
Tomi Ollila
a3ee732c52 test-lib.sh: rename $DTACH_TERM to $SMART_TERM 2016-10-22 12:13:55 -03:00
David Bremner
e2e0b451fe NEWS for 0.23.1 2016-10-19 08:40:18 -03:00
Mark Walters
4c822aecc7 emacs: search face bugfix
In commit 2a7b11b064 the default faces
for unread and flagged were accidentally swapped. This swaps them back.
2016-10-19 08:39:58 -03:00
Mark Walters
a4331bf138 emacs: fix notmuch-search-line-faces defcustom
In commit 2a7b11b064 the default value
for notmuch-search-line-faces was changed so that it didn't match the
specification in the corresponding defcustom. This meant that it was
difficult for the user to customize this variable as they got a type
mismatch error.

Note anyone who had already customised this variable would not see
this bug as their customisation would match the defcustom.
2016-10-19 08:39:36 -03:00
David Bremner
f575a346df emacs/show: force notmuch-show-buttonise-links to act on lines
This seems to fix a problem with emacs 25 creating partial buttons by
calling n-s-b-l with a region that does not include the whole button.
I'm not 100% sure it's legit to act outside the region passed by
jit-lock, but goto-address-fontify-region (where I borrowed the code
from) already does this, so this patch to not make things worse.
2016-10-11 22:40:25 -03:00
David Bremner
b2d6f07a02 lib: document API added in 0.23
The API was already documented, but for future readers note when the
functions were added,
2016-10-06 22:46:01 -03:00
David Bremner
af8903df34 require xapian >= 1.2.6
It seems that no-one tried to compile without Xapian compact support
since March of 2015, since that's when I introduced a syntax error in
that branch of the ifdef.

Given the choice of maintaining this underused branch of code, or
bumping the Xapian dependency to a version from 2011, it seems
reasonable to do the latter.
2016-10-06 22:45:46 -03:00
David Bremner
dbf6142789 debian: changelog stanza for 0.23-2 2016-10-05 21:27:17 -03:00
David Bremner
6cd6561aab debian: changelog stanza for 0.23-1 2016-10-03 22:47:21 -03:00
David Bremner
22cfd6db9f NEWS: bump date to today 2016-10-03 22:43:23 -03:00
David Bremner
3b760413c5 version: bump to 0.23 2016-10-03 22:40:22 -03:00
David Bremner
c2e74662bb lib: bump minor version to mark added symbols
This should not change the SONAME, and therefore won't change the
dynamic linking behaviour, but it may help some users debug missing
symbols in case their libnotmuch is too old.
2016-10-01 22:19:07 -03:00
David Bremner
4241b4d4e6 debian: changelog stanza for 0.23~rc1-1 2016-09-30 07:21:09 -03:00
David Bremner
efd79aedf2 version: update to 0.23~rc1 2016-09-30 07:18:04 -03:00
Tomi Ollila
fde846cf7d configure: set platform variables also when uname is unrecognized
Since commit

124a67e96e: configure: add set -u

all variables must be set before their expansion are attempted. These
2 variables: "platform" and "linker_resolves_library_dependencies" were
not given value in the final 'else' branch when platform check failed
due to unrecognized kernel name (output of `uname`). Now those two are
given reasonable non-empty values.
2016-09-30 07:15:49 -03:00
Mark Walters
0b138c2686 emacs: fcc: say we are doing Fcc
Since doing the Fcc with notmuch insert could be slow (if the indexing
takes some time) add a message saying we are doing it.
2016-09-30 07:13:54 -03:00
Mark Walters
4266e76eed emacs: document notmuch-fcc-dirs
This updates the docstring for the variable notmuch-fcc-dirs to match
the new insert code.
2016-09-29 08:07:38 -03:00
Mark Walters
cdd7b0796b NEWS: add news for fcc insert and address completion changes 2016-09-29 08:07:13 -03:00
Tomi Ollila
1c3a8e0898 lib/database.cc: fix misleading indentation
Found by gcc 6.1.1 -Wmisleading-indentation option (set by -Wall).
2016-09-28 08:14:08 -03:00
Tomi Ollila
b844c3c506 NEWS: emacs notmuch-show-resend-message 2016-09-28 08:13:56 -03:00
David Bremner
35fc6d3c18 NEWS: mention message properties API, dump/restore 2016-09-27 09:18:31 -03:00
David Bremner
64cfd47e4b NEWS: fix headline for go bindings NEWS 2016-09-27 09:12:14 -03:00
David Bremner
71e312b978 NEWS: note notmuch-reply refactor 2016-09-27 09:12:14 -03:00
David Bremner
853ee0b909 NEWS: note dropping of User-Agent header 2016-09-27 09:12:14 -03:00
David Bremner
4ebbdd1a21 NEWS: document mtime bugfix 2016-09-27 09:12:14 -03:00
Mark Walters
9966720453 emacs: tree: make b bounce a message and backspace scroll message pane up
This tweaks the keybindings in tree-mode. It make b do bounce/resend
matching show-mode. Since b was already bound to scroll message pane
back, we now use backspace for that.

This means space/backspace scroll the message pane forwards/backwards,
and page-up/page-down scrolls the tree pane forwards/backwards.
2016-09-26 13:01:31 -03:00
David Bremner
114d1cd0d0 debian: update symbols for 0.23
New sub-APIs: config, built_with, message_property. A new exception used
internally. Mark the exception as optional, as it only shows up when
built against Xapian supporting FieldProcessors
2016-09-26 08:21:03 -03:00
David Bremner
18e720314f debian: changelog stanza for 0.23~rc0-1 2016-09-26 07:30:15 -03:00
David Bremner
76a1f46a44 version: bump to 0.23~rc0 2016-09-26 07:22:21 -03:00
Mark Walters
51d27e0855 emacs: tag deleted face bugfix
Commit d25d33ff cleaned up some of the tag face code. However, for the
face notmuch-tag-deleted it used the test

((class color) (supports :strike-through))

to decide whether to use red strikethrough or inverse-video (emacs in
a terminal typically doesn't support red strikethrough, but in X it does).

However, it seems that test often returns true even though red
strikethrough is not supported. This breaks the tag update code -- the
wrong thing is displayed to the user.

Thus we make the test explicitly more specific, changing the test to

((class color) (supports :strike-through "red"))
2016-09-25 07:42:01 -03:00
Tomi Ollila
b57426a435 test: test-lib.sh: use $BASH instead of ${SHELL-sh} to relaunch
In case of the test script is to be relaunced under valgrind, or --tee
is requested, use the $BASH shell variable to locate the command
interpreter. The $SHELL variable is re-set by non-interactive shells
so in case the shell uses some other shell (e.g. zsh) for interactive
use these bash scripts continue to work.
2016-09-24 10:10:40 -03:00
David Bremner
514a0a6a3b lib: add talloc reference from string map iterator to map
This is needed so that when the map is modified during traversal, and
thus unlinked by the database code, the map is not disposed of until the
iterator is done with it.
2016-09-24 10:08:45 -03:00
Mark Walters
7b2d7d6512 emacs: tree: make jump close message pane
j is in the global notmuch keymap bound to notmuch jump. In tree-mode
it makes sense to close the message pane first (otherwise the new
search runs in the small top pane of tree-mode).
2016-09-24 10:08:24 -03:00
David Bremner
5292e9b1ae test/emacs: add broken test for message replying to msg to self
This is a strange corner case where the removing of the user's address
from the To: header does the wrong thing. If we think it is
worth (eventually) fixing, this test can serve as a reminder.
2016-09-24 10:05:04 -03:00
David Bremner
efc17bb561 NEWS: fix markup of CONSTANTS_WITH_UNDERSCORES
Alas, I did not notice when when I originally applied the NEWS patch
2016-09-23 20:58:32 -03:00
David Bremner
67873799ea NEWS: news for Xapian 1.4 enabled features
In fact some of these features are available in Xapian 1.3.x development
releases, but these are not really widely packaged. In any case, the
experts who are using development releases of Xapian can figure that
out.
2016-09-23 20:51:55 -03:00
David Bremner
1d4812fd61 test: fix printf format
notmuch_status_t is an integer type, printing it as a string is a very
bad idea.
2016-09-22 08:11:42 -03:00
David Bremner
50a1032f87 build system: choose gnu99 as a C standard
Apparently pre 5.1 gcc defaulted to gnu89, but we decided it was ok to
use some c99 features.

'-std=c99' by itself is not enough for notmuch to compile.

'-std=gnu99' seems to work with clang and gcc, so I'm not convinced
configuration support is needed.
2016-09-21 20:09:14 -03:00
Daniel Kahn Gillmor
693ca8d8a8 add property: query prefix to search for specific properties
We want to be able to query the properties directly, like:

   notmuch count property:foo=bar

which should return a count of messages where the property with key
"foo" has value equal to "bar".
2016-09-21 18:14:25 -03:00
David Bremner
651da30c09 cli: optionally restore message properties from dump file
This somewhat mimics the config line parsing, except there can be
arbitrarily many key value pairs, so one more level of looping is
required.
2016-09-21 18:14:25 -03:00
David Bremner
b7345d277e CLI: add properties to dump output
Part of providing extensibility via properties is to make sure that user
data is not lost. Thus we need to be able to dump and restore
properties.
2016-09-21 18:14:25 -03:00
David Bremner
f240528095 CLI: refactor dumping of tags.
This is mainly code movement, to make room in the loop over messages for
dumping properties.
2016-09-21 18:14:25 -03:00
David Bremner
58fe8fce1d lib: iterator API for message properties
This is a thin wrapper around the string map iterator API just introduced.
2016-09-21 18:14:25 -03:00
David Bremner
b846bdb482 lib: extend private string map API with iterators
Support for prefix based iterators is perhaps overengineering, but I
wanted to mimic the existing database_config API.
2016-09-21 18:14:24 -03:00
David Bremner
b8bb6d7964 lib: basic message-property API
Initially, support get, set and removal of single key/value pair, as
well as removing all properties.
2016-09-21 18:14:24 -03:00
David Bremner
8b03ee1d5a lib: private string map (associative array) API
The choice of array implementation is deliberate, for future iterator support
2016-09-21 18:14:24 -03:00
David Bremner
4dfb69169e lib: read "property" terms from messages.
This is a first step towards providing an API to attach
arbitrary (key,value) pairs to messages and retrieve all of the values
for a given key.
2016-09-21 18:14:24 -03:00
Jani Nikula
a63e674b34 test: silence the output of notmuch new mid-test
Fix this during test run:

T470-missing-headers: Testing messages with missing headers
Added 2 new messages to the database.
2016-09-19 20:42:09 -03:00