diff --git a/devel/schemata b/devel/schemata index ae84a528..01e3a3df 100644 --- a/devel/schemata +++ b/devel/schemata @@ -14,7 +14,7 @@ are interleaved. Keys are printed as keywords (symbols preceded by a colon), e.g. (:id "123" :time 54321 :from "foobar"). Null is printed as nil, true as t and false as nil. -This is version 4 of the structured output format. +This is version 5 of the structured output format. Version history --------------- @@ -36,6 +36,10 @@ v4 - (notmuch 0.29) added message.crypto to identify overall message cryptographic state +v5 +- sorting support for notmuch show (no change to actual schema, + just new command line argument) + Common non-terminals -------------------- diff --git a/emacs/notmuch-address.el b/emacs/notmuch-address.el index f0af6667..9fc13bc5 100644 --- a/emacs/notmuch-address.el +++ b/emacs/notmuch-address.el @@ -308,7 +308,7 @@ execution, CALLBACK is called when harvesting finishes." (and config-query (format " and (%s)" config-query))) from-or-to-me-query)) - (args `("address" "--format=sexp" "--format-version=4" + (args `("address" "--format=sexp" "--format-version=5" ,(if sent "--output=recipients" "--output=sender") "--deduplicate=address" ,query))) diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index 17954fb3..f510c043 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -235,7 +235,7 @@ Typically this is added to `notmuch-mua-send-hook'." ;;; Mua reply (defun notmuch-mua-reply (query-string &optional sender reply-all) - (let ((args '("reply" "--format=sexp" "--format-version=4")) + (let ((args '("reply" "--format=sexp" "--format-version=5")) (process-crypto notmuch-show-process-crypto) reply original) diff --git a/emacs/notmuch-query.el b/emacs/notmuch-query.el index d7349b77..5c7f4f8d 100644 --- a/emacs/notmuch-query.el +++ b/emacs/notmuch-query.el @@ -31,7 +31,7 @@ A thread is a forest or list of trees. A tree is a two element list where the first element is a message, and the second element is a possibly empty forest of replies." - (let ((args '("show" "--format=sexp" "--format-version=4"))) + (let ((args '("show" "--format=sexp" "--format-version=5"))) (when notmuch-show-process-crypto (setq args (append args '("--decrypt=true")))) (setq args (append args search-terms)) diff --git a/emacs/notmuch-tree.el b/emacs/notmuch-tree.el index 01a77b71..2f508128 100644 --- a/emacs/notmuch-tree.el +++ b/emacs/notmuch-tree.el @@ -1103,7 +1103,7 @@ the same as for the function notmuch-tree." (notmuch-tag-clear-cache) (let ((proc (notmuch-start-notmuch "notmuch-tree" (current-buffer) #'notmuch-tree-process-sentinel - "show" "--body=false" "--format=sexp" "--format-version=4" + "show" "--body=false" "--format=sexp" "--format-version=5" sort-arg message-arg search-args)) ;; Use a scratch buffer to accumulate partial output. ;; This buffer will be killed by the sentinel, which diff --git a/emacs/notmuch.el b/emacs/notmuch.el index 351334aa..739cb93b 100644 --- a/emacs/notmuch.el +++ b/emacs/notmuch.el @@ -1020,7 +1020,7 @@ the configured default sort order." (save-excursion (let ((proc (notmuch-start-notmuch "notmuch-search" buffer #'notmuch-search-process-sentinel - "search" "--format=sexp" "--format-version=4" + "search" "--format=sexp" "--format-version=5" (if oldest-first "--sort=oldest-first" "--sort=newest-first") diff --git a/notmuch-client.h b/notmuch-client.h index 8227fea4..8643a63f 100644 --- a/notmuch-client.h +++ b/notmuch-client.h @@ -137,7 +137,7 @@ chomp_newline (char *str) * this. New (required) map fields can be added without increasing * this. */ -#define NOTMUCH_FORMAT_CUR 4 +#define NOTMUCH_FORMAT_CUR 5 /* The minimum supported structured output format version. Requests * for format versions below this will return an error. */ #define NOTMUCH_FORMAT_MIN 1 diff --git a/test/T310-emacs.sh b/test/T310-emacs.sh index 7b70175b..d69d94a3 100755 --- a/test/T310-emacs.sh +++ b/test/T310-emacs.sh @@ -1060,7 +1060,7 @@ End of search results. YYY/notmuch_fail exited with status 1 (see *Notmuch errors* for more details) === ERROR === YYY/notmuch_fail exited with status 1 -command: YYY/notmuch_fail search --format\=sexp --format-version\=4 --sort\=newest-first tag\:inbox +command: YYY/notmuch_fail search --format\=sexp --format-version\=5 --sort\=newest-first tag\:inbox exit status: 1" test_begin_subtest "Search handles subprocess warnings" diff --git a/test/T450-emacs-show.sh b/test/T450-emacs-show.sh index 9d08d2cc..a750cc4d 100755 --- a/test/T450-emacs-show.sh +++ b/test/T450-emacs-show.sh @@ -192,7 +192,7 @@ test_expect_equal "$(notmuch_emacs_error_sanitize notmuch_fail OUTPUT MESSAGES E This is an error (see *Notmuch errors* for more details) === ERROR === This is an error -command: YYY/notmuch_fail show --format\\=sexp --format-version\\=4 --decrypt\\=true --exclude\\=false \\' \\* \\' +command: YYY/notmuch_fail show --format\\=sexp --format-version\\=5 --decrypt\\=true --exclude\\=false \\' \\* \\' exit status: 1 stderr: This is an error