diff --git a/NEWS b/NEWS index 3e776009..1c6246db 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,26 @@ Vim Respect excluded tags when showing a thread. +Notmuch 0.32.3 (2021-08-17) +=========================== + +Library +------- + +Restore location of database via `MAILDIR` environment variable, which +was broken in 0.32. + +Bump libnotmuch minor version to match the documentation in +`notmuch.h`. + +Correct documentation for deprecated database opening functions to +point out that they (still) do not load configuration information. + +CLI +--- + +Restore "notmuch config get built_with.*", which was broken in 0.32. + Notmuch 0.32.2 (2021-06-27) =========================== diff --git a/bindings/python-cffi/version.txt b/bindings/python-cffi/version.txt index 989b29cc..d721c768 100644 --- a/bindings/python-cffi/version.txt +++ b/bindings/python-cffi/version.txt @@ -1 +1 @@ -0.32.2 +0.32.3 diff --git a/bindings/python/notmuch/version.py b/bindings/python/notmuch/version.py index de104bfa..e10408ac 100644 --- a/bindings/python/notmuch/version.py +++ b/bindings/python/notmuch/version.py @@ -1,3 +1,3 @@ # this file should be kept in sync with ../../../version -__VERSION__ = '0.32.2' +__VERSION__ = '0.32.3' SOVERSION = '5' diff --git a/debian/changelog b/debian/changelog index 903c1f94..aa4218c2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +notmuch (0.32.3-1) unstable; urgency=medium + + * new upstream bugfix release + * fixes for a few configuration related bugs introduced in 0.32 + * bump libnotmuch minor version to match documentation. + + -- David Bremner Tue, 17 Aug 2021 17:16:09 -0700 + notmuch (0.32.2-1) experimental; urgency=medium * New upstream bugfix release @@ -36,6 +44,15 @@ notmuch (0.32~rc1-1) experimental; urgency=medium -- David Bremner Sat, 24 Apr 2021 12:46:10 -0300 +notmuch (0.31.4-2) unstable; urgency=medium + + * Cherry pick upstream commit 3f4de98e7c8, which fixes a bug where + duplicate message-ids can cause multiple thread-ids for some message + documents. + * Add build-dependency on xapian-tools, for new test + + -- David Bremner Mon, 28 Jun 2021 22:48:02 -0300 + notmuch (0.31.4-1) unstable; urgency=medium * New upstream bugfix release diff --git a/lib/notmuch.h b/lib/notmuch.h index 3b28bea3..ef11ed1b 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -58,7 +58,7 @@ NOTMUCH_BEGIN_DECLS * version in Makefile.local. */ #define LIBNOTMUCH_MAJOR_VERSION 5 -#define LIBNOTMUCH_MINOR_VERSION 3 +#define LIBNOTMUCH_MINOR_VERSION 4 #define LIBNOTMUCH_MICRO_VERSION 0 @@ -316,7 +316,7 @@ typedef enum { /** * Deprecated alias for notmuch_database_open_with_config with - * config_path=error_message=NULL + * config_path="" and error_message=NULL * @deprecated Deprecated as of libnotmuch 5.4 (notmuch 0.32) */ /* NOTMUCH_DEPRECATED(5, 4) */ @@ -326,7 +326,7 @@ notmuch_database_open (const char *path, notmuch_database_t **database); /** * Deprecated alias for notmuch_database_open_with_config with - * config_path=NULL + * config_path="" * * @deprecated Deprecated as of libnotmuch 5.4 (notmuch 0.32) * diff --git a/lib/open.cc b/lib/open.cc index 7b95c5b1..280ffee3 100644 --- a/lib/open.cc +++ b/lib/open.cc @@ -220,6 +220,10 @@ _choose_database_path (void *ctx, } } + if (! *database_path) { + *database_path = getenv ("MAILDIR"); + } + if (! *database_path) { notmuch_status_t status; diff --git a/notmuch-config.c b/notmuch-config.c index 3430a3d3..4de55e5f 100644 --- a/notmuch-config.c +++ b/notmuch-config.c @@ -538,11 +538,18 @@ notmuch_config_command_get (notmuch_database_t *notmuch, char *item) { notmuch_config_values_t *list; - for (list = notmuch_config_get_values_string (notmuch, item); - notmuch_config_values_valid (list); - notmuch_config_values_move_to_next (list)) { - const char *val = notmuch_config_values_get (list); - puts (val); + if (STRNCMP_LITERAL (item, BUILT_WITH_PREFIX) == 0) { + if (notmuch_built_with (item + strlen (BUILT_WITH_PREFIX))) + puts ("true"); + else + puts ("false"); + } else { + for (list = notmuch_config_get_values_string (notmuch, item); + notmuch_config_values_valid (list); + notmuch_config_values_move_to_next (list)) { + const char *val = notmuch_config_values_get (list); + puts (val); + } } return EXIT_SUCCESS; } diff --git a/test/T030-config.sh b/test/T030-config.sh index 751feaf3..636c6356 100755 --- a/test/T030-config.sh +++ b/test/T030-config.sh @@ -145,4 +145,21 @@ notmuch config set --database ${key} ${value} output=$(notmuch config get ${key}) test_expect_equal "${output}" "${value}" +test_begin_subtest "set built_with.* yields error" +test_expect_code 1 "notmuch config set built_with.compact false" + +test_begin_subtest "get built_with.{compact,field_processor} prints true" +for key in compact field_processor; do + notmuch config get built_with.${key} +done > OUTPUT +cat < EXPECTED +true +true +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "get built_with.nonexistent prints false" +output=$(notmuch config get built_with.nonexistent) +test_expect_equal "$output" "false" + test_done diff --git a/test/T055-path-config.sh b/test/T055-path-config.sh index bb3bf665..6f41e2cf 100755 --- a/test/T055-path-config.sh +++ b/test/T055-path-config.sh @@ -16,6 +16,7 @@ restore_config () { unset DATABASE_PATH unset NOTMUCH_PROFILE unset XAPIAN_PATH + unset MAILDIR rm -f "$HOME/mail" cp notmuch-config-backup.${test_name} ${NOTMUCH_CONFIG} } @@ -55,6 +56,18 @@ home_mail_config () { unset DATABASE_PATH } +maildir_env_config () { + local dir + backup_config + dir="${HOME}/env_points_here" + ln -s $MAIL_DIR $dir + export MAILDIR=$dir + notmuch config set database.path + notmuch config set database.mail_root + XAPIAN_PATH="${MAIL_DIR}/.notmuch/xapian" + unset DATABASE_PATH +} + xdg_config () { local dir local profile=${1:-default} @@ -79,7 +92,7 @@ xdg_config () { notmuch --config=${CONFIG_PATH} config set database.path } -for config in traditional split XDG XDG+profile symlink home_mail; do +for config in traditional split XDG XDG+profile symlink home_mail maildir_env; do #start each set of tests with an known set of messages add_email_corpus @@ -106,6 +119,9 @@ for config in traditional split XDG XDG+profile symlink home_mail; do home_mail) home_mail_config ;; + maildir_env) + maildir_env_config + ;; esac test_begin_subtest "count ($config)" @@ -190,6 +206,7 @@ On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: > basic reply test EOF test_expect_equal_file EXPECTED OUTPUT + test_begin_subtest "insert+search ($config)" generate_message \ "[subject]=\"insert-subject\"" \ @@ -250,11 +267,13 @@ EOF test_expect_equal "${output}+${output2}" "${value}+" test_begin_subtest "Config list ($config)" - notmuch config list | notmuch_dir_sanitize | sed -e "s/^database.backup_dir=.*$/database.backup_dir/" \ - -e "s/^database.hook_dir=.*$/database.hook_dir/" \ - -e "s/^database.path=.*$/database.path/" \ - -e "s,^database.mail_root=CWD/home/mail,database.mail_root=MAIL_DIR," \ - > OUTPUT + notmuch config list | notmuch_dir_sanitize | \ + sed -e "s/^database.backup_dir=.*$/database.backup_dir/" \ + -e "s/^database.hook_dir=.*$/database.hook_dir/" \ + -e "s/^database.path=.*$/database.path/" \ + -e "s,^database.mail_root=CWD/home/mail,database.mail_root=MAIL_DIR," \ + -e "s,^database.mail_root=CWD/home/env_points_here,database.mail_root=MAIL_DIR," \ + > OUTPUT cat < EXPECTED built_with.compact=true built_with.field_processor=true diff --git a/version.txt b/version.txt index 989b29cc..d721c768 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.32.2 +0.32.3