]> git.notmuchmail.org Git - notmuch/commitdiff
Merge branch 'release'
authorDavid Bremner <david@tethera.net>
Wed, 6 Mar 2019 12:53:26 +0000 (08:53 -0400)
committerDavid Bremner <david@tethera.net>
Wed, 6 Mar 2019 12:53:26 +0000 (08:53 -0400)
Changes from 0.28.3

NEWS
bindings/python/notmuch/version.py
debian/changelog
doc/Makefile.local
lib/string-map.c
test/T610-message-property.sh
version

diff --git a/NEWS b/NEWS
index 2a69b0be5206bf8d59b0057d53888999dd84a4b6..9fcb57edc3d3c830cdc9176e6148b7a77d40f12e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -7,6 +7,20 @@ Command Line Interface
 `notmuch show` now supports --body=false and --include-html with
 --format=text
 
+Notmuch 0.28.3 (2019-03-05)
+===========================
+
+Library
+-------
+
+Fix a bug with the internal data structure _notmuch_string_map_t used
+by message properties.
+
+Build System
+------------
+
+Serialize calls to sphinx-build to avoid race condition.
+`
 Notmuch 0.28.2 (2019-02-17)
 ===========================
 
index f376f6e6fad630944a7b1d23f6c56f50fbe92786..8217eabf13e32b31734f0a0a745a31e7d68894cd 100644 (file)
@@ -1,3 +1,3 @@
 # this file should be kept in sync with ../../../version
-__VERSION__ = '0.28.2'
+__VERSION__ = '0.28.3'
 SOVERSION = '5'
index 9ed2547e10f4f19be7317f6b24c17e06b8538762..8afd985b06f4bb75ef4e9897f72046053b9f5061 100644 (file)
@@ -1,3 +1,12 @@
+notmuch (0.28.3-1) unstable; urgency=medium
+
+  * New upstream bugfix release.
+  * Fix for bug in message property search
+  * Fix for race condition leading to (very) occasional build failures
+    when building the documentation.
+
+ -- David Bremner <bremner@debian.org>  Tue, 05 Mar 2019 15:39:09 -0400
+
 notmuch (0.28.2-1) unstable; urgency=medium
 
   * [notmuch-emacs] Invoke gpg from with --batch and --no-tty
index f53b3702fb9dc8ca175605ad64056520ffd680ff..bab3d0d286ce75efe68433b3a8c82ab87eac7dd6 100644 (file)
@@ -41,6 +41,14 @@ ifeq ($(WITH_EMACS),1)
 $(DOCBUILDDIR)/.roff.stamp sphinx-html sphinx-texinfo: docstring.stamp
 endif
 
+# Sequentialize the calls to sphinx-build to avoid races with
+# reading/writing cached state. This uses GNU make specific
+# "order-only" prerequisites.
+
+sphinx-html: | $(DOCBUILDDIR)/.roff.stamp
+sphinx-texinfo: | sphinx-html
+sphinx-info: | sphinx-texinfo
+
 sphinx-html:
        $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(DOCBUILDDIR)/html
 
index ad818207f5d4a91450336a99af2518ffcd2b8bc3..a88404c734ff5a93ab98349bcc7913229bd19e47 100644 (file)
@@ -106,7 +106,7 @@ _notmuch_string_map_sort (notmuch_string_map_t *map)
     map->sorted = true;
 }
 
-static bool
+static int
 string_cmp (const char *a, const char *b, bool exact)
 {
     if (exact)
index 0abef82433d7742cc84577c9836ff7b528d7599d..53a0be3bdf3c3cb170ad59fe9c8fc6b9dffa780e 100755 (executable)
@@ -100,6 +100,41 @@ cat <<'EOF' >EXPECTED
 EOF
 test_expect_equal_file EXPECTED OUTPUT
 
+test_begin_subtest "testing string map binary search (via message properties)"
+cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
+{
+   char *keys[] = {"a", "b", "c", "d", "e", NULL};
+   for (int i=0; keys[i]; i++)
+       EXPECT0(notmuch_message_add_property (message, keys[i], keys[i]));
+
+   for (int i=0; keys[i]; i++) {
+      EXPECT0(notmuch_message_get_property (message, keys[i], &val));
+      printf("%s = %s\n", keys[i], val);
+   }
+
+   for (int i=0; keys[i]; i++) {
+      EXPECT0(notmuch_message_remove_property (message, keys[i], keys[i]));
+      EXPECT0(notmuch_message_get_property (message, keys[i], &val));
+      printf("%s = %s\n", keys[i], val == NULL ? "NULL" : val);
+   }
+}
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+a = a
+b = b
+c = c
+d = d
+e = e
+a = NULL
+b = NULL
+c = NULL
+d = NULL
+e = NULL
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
 test_begin_subtest "notmuch_message_get_properties: empty list"
 cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
 {
diff --git a/version b/version
index a37255a85b9f006788bc34d9f098a5235c3e36a2..b79f04f44d612fb6ec325b602bc5800ec73459bf 100644 (file)
--- a/version
+++ b/version
@@ -1 +1 @@
-0.28.2
+0.28.3