diff --git a/Makefile.local b/Makefile.local index d699463b..15e6d882 100644 --- a/Makefile.local +++ b/Makefile.local @@ -143,7 +143,7 @@ debian-snapshot: TMPFILE := $(shell mktemp) debian-snapshot: make VERSION=$(VERSION) clean cp debian/changelog $(TMPFILE) - EDITOR=/bin/true dch -v $(VERSION)+1 -D UNRELEASED 'test build, not for upload' + EDITOR=/bin/true dch -b -v $(VERSION)+1 -D UNRELEASED 'test build, not for upload' echo '3.0 (native)' > debian/source/format debuild -us -uc mv -f $(TMPFILE) debian/changelog diff --git a/NEWS b/NEWS index 2b2f08a6..bb5e4d55 100644 --- a/NEWS +++ b/NEWS @@ -11,6 +11,17 @@ Automatic tag query optimization suggested that people do this by hand; this is no longer necessary. +Notmuch 0.10.2 (2011-12-04) +=========================== + +Bug-fix release. +---------------- + +Fix crash in python bindings. + + The python bindings did not call g_type_init, which caused crashes + for some, but not all users. + Notmuch 0.10.1 (2011-11-25) =========================== diff --git a/bindings/python/notmuch/version.py b/bindings/python/notmuch/version.py index a6a872eb..fd414b0a 100644 --- a/bindings/python/notmuch/version.py +++ b/bindings/python/notmuch/version.py @@ -1,2 +1,2 @@ # this file should be kept in sync with ../../../version -__VERSION__ = '0.10.1' +__VERSION__ = '0.10.2' diff --git a/debian/changelog b/debian/changelog index ac5c3314..0bcade10 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +notmuch (0.10.2-1) unstable; urgency=low + + * Upstream bug fix release + - Fix segfault in python bindings due to missing g_type_init call. + + -- David Bremner Sun, 04 Dec 2011 22:06:46 -0400 + notmuch (0.10.1-1) unstable; urgency=low * Upstream bug fix release. diff --git a/lib/database.cc b/lib/database.cc index e4ef14e0..98f101e6 100644 --- a/lib/database.cc +++ b/lib/database.cc @@ -26,6 +26,7 @@ #include #include /* g_free, GPtrArray, GHashTable */ +#include /* g_type_init */ using namespace std; @@ -600,6 +601,9 @@ notmuch_database_open (const char *path, goto DONE; } + /* Initialize the GLib type system and threads */ + g_type_init (); + notmuch = talloc (NULL, notmuch_database_t); notmuch->exception_reported = FALSE; notmuch->path = talloc_strdup (notmuch, path); diff --git a/notmuch.1 b/notmuch.1 index 92931d73..147319e5 100644 --- a/notmuch.1 +++ b/notmuch.1 @@ -16,7 +16,7 @@ .\" along with this program. If not, see http://www.gnu.org/licenses/ . .\" .\" Author: Carl Worth -.TH NOTMUCH 1 2011-11-25 "Notmuch 0.10.1" +.TH NOTMUCH 1 2011-12-04 "Notmuch 0.10.2" .SH NAME notmuch \- thread-based email index, search, and tagging .SH SYNOPSIS diff --git a/test/notmuch-test b/test/notmuch-test index ba28ff39..53ce355c 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -47,6 +47,7 @@ TESTS=" symbol-hiding search-folder-coherence atomicity + python " TESTS=${NOTMUCH_TESTS:=$TESTS} diff --git a/test/python b/test/python new file mode 100755 index 00000000..f737749f --- /dev/null +++ b/test/python @@ -0,0 +1,19 @@ +#!/usr/bin/env bash +test_description="python bindings" +. ./test-lib.sh + +add_email_corpus + +test_begin_subtest "compare thread ids" +LD_LIBRARY_PATH=$TEST_DIRECTORY/../lib \ +PYTHONPATH=$TEST_DIRECTORY/../bindings/python \ +python < OUTPUT +import notmuch +db = notmuch.Database(mode=notmuch.Database.MODE.READ_WRITE) +q_new = notmuch.Query(db, 'tag:inbox') +for t in q_new.search_threads(): + print t.get_thread_id() +EOF +notmuch search --output=threads tag:inbox | sed s/^thread:// | sort > EXPECTED +test_expect_equal_file OUTPUT EXPECTED +test_done diff --git a/version b/version index 57121573..5eef0f10 100644 --- a/version +++ b/version @@ -1 +1 @@ -0.10.1 +0.10.2