From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id uGNuB1PrumKZIQAAbAwnHQ (envelope-from ) for ; Tue, 28 Jun 2022 13:51:47 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id mKpqB1PrumKfkgAA9RJhRA (envelope-from ) for ; Tue, 28 Jun 2022 13:51:47 +0200 Received: from mail.notmuchmail.org (yantan.tethera.net [IPv6:2a01:4f9:c011:7a79::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id DB6AC3BD24 for ; Tue, 28 Jun 2022 13:51:46 +0200 (CEST) Received: from yantan.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id 3952A5F3B0; Tue, 28 Jun 2022 11:51:44 +0000 (UTC) Received: from fethera.tethera.net (fethera.tethera.net [198.245.60.197]) by mail.notmuchmail.org (Postfix) with ESMTP id 8B92C5E221 for ; Tue, 28 Jun 2022 11:51:41 +0000 (UTC) Received: by fethera.tethera.net (Postfix, from userid 1001) id 1B47C5FBD0; Tue, 28 Jun 2022 07:51:40 -0400 (EDT) Received: (nullmailer pid 1816585 invoked by uid 1000); Tue, 28 Jun 2022 11:51:38 -0000 From: David Bremner To: notmuch@notmuchmail.org Subject: [PATCH] emacs: mark notmuch-query.el as obsolete Date: Tue, 28 Jun 2022 08:50:55 -0300 Message-Id: <20220628115055.1816572-1-david@tethera.net> X-Mailer: git-send-email 2.35.2 MIME-Version: 1.0 Message-ID-Hash: JRRFKR3MFIOE4H6TLW5D6WQ3PFTC4QGL X-Message-ID-Hash: JRRFKR3MFIOE4H6TLW5D6WQ3PFTC4QGL X-MailFrom: bremner@tethera.net X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.3 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: DE ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1656417106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-owner:list-unsubscribe:list-subscribe:list-post; bh=kwPBJ1OZ8FZn0TevsxrxWeVJIAtsaH8zfRLW7HtbtAs=; b=SE05Tcndx92szK4FvGdC2PJSql0MUVUQnN4CuTw4bECr39bgbLz340hBeZmcuyJ6gYFuSV 0TxDhNA5c3GOPuyhUZZaTQY+/JWlMk+pnWmyO3lzfYMz0FNGUbUhxpbaooE1M8QxbXyM2R zXD7+A2iDy+VCBk+3lEDFAUjPN6jmhS2w2x2PEsgYdod0nc2BKFqBxQAlgZatRrdXVAbcg NEQ+BIu76pT8u5shx5R1SmE8nV8Vyq6l4IRQ1qkDL903qxngEwRtOSznYzCqW9Dq/lzzl4 VqbNJv/gwtD/ISw/oOg4Scjve3eJibAdQUDL5tXNkrbdI+hZXfQ4xuh328UQNQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1656417106; a=rsa-sha256; cv=none; b=ksqOBETSpDeOdTVqpZo1CIgLdd4INHxlxlGPS8Nnqrno6AUIpPmy4cdiCD5vQK5Va225G3 +VmkGSHAt0A+iS2iFdN0poVn1FOZ3gYg9PcC/NQ1EftkpJi/p7TVZLdkQ8FEJOVxjl8Vg9 kzyphRFif6E+JTbx1K4KJb61MCONa0KghVPSpkLaMI5qEkHcJhfzNFRSMBQxE4IGuSmkXS OkbOp+BtT1N4aJ133UtfhPHt47+ZFg+JuhbbCpEJqe8SN/n2YLmzsEHhX+2u+fFtPUroLi ef2F0hRwk7gNf/aaisRJJcWWS5/nbSrHEYSe9Yy8tv61Vvml1mpSPdFUyzXREA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Spam-Score: -1.24 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Queue-Id: DB6AC3BD24 X-Spam-Score: -1.24 X-Migadu-Scanner: scn0.migadu.com X-TUID: Fji8UXE9kpll The only functionality actually used by notmuch is the base function notmuch-query-get-threads; the other functions in this file have nothing to do with that (single) use. Move that function into notmuch-lib.el and rename to reflect use. Deprecate the other functions in notmuch-query.el. --- emacs/notmuch-lib.el | 12 ++++++++++++ emacs/notmuch-query.el | 23 ++++++++++------------- emacs/notmuch-show.el | 3 +-- emacs/notmuch-tree.el | 1 - 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el index 1e631d0e..cc706924 100644 --- a/emacs/notmuch-lib.el +++ b/emacs/notmuch-lib.el @@ -1029,6 +1029,18 @@ status." (defvar-local notmuch-show-process-crypto nil) +(defun notmuch--run-show (search-terms) + "Return a list of threads of messages matching SEARCH-TERMS. + +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=5"))) + (when notmuch-show-process-crypto + (setq args (append args '("--decrypt=true")))) + (setq args (append args search-terms)) + (apply #'notmuch-call-notmuch-sexp args))) + ;;; Generic Utilities (defun notmuch-interactive-region () diff --git a/emacs/notmuch-query.el b/emacs/notmuch-query.el index 5c7f4f8d..2a46144c 100644 --- a/emacs/notmuch-query.el +++ b/emacs/notmuch-query.el @@ -25,17 +25,10 @@ ;;; Basic query function -(defun notmuch-query-get-threads (search-terms) - "Return a list of threads of messages matching SEARCH-TERMS. - -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=5"))) - (when notmuch-show-process-crypto - (setq args (append args '("--decrypt=true")))) - (setq args (append args search-terms)) - (apply #'notmuch-call-notmuch-sexp args))) +(define-obsolete-function-alias + 'notmuch-query-get-threads + #'notmuch--run-show + "notmuch 0.37") ;;; Mapping functions across collections of messages @@ -60,7 +53,7 @@ Flatten results to a list. See the function (defun notmuch-query-map-tree (fn tree) "Apply function FN to every message in TREE. Flatten results to a list. See the function -`notmuch-query-get-threads' for more information." +`notmuch--run-show' for more information." (cons (funcall fn (car tree)) (notmuch-query-map-forest fn (cadr tree)))) @@ -70,7 +63,11 @@ Flatten results to a list. See the function "Return a list of message-ids of messages that match SEARCH-TERMS." (notmuch-query-map-threads (lambda (msg) (plist-get msg :id)) - (notmuch-query-get-threads search-terms))) + (notmuch--run-show search-terms))) + +;;; Everything in this library is obsolete +(dolist (fun '(map-aux map-threads map-forest map-tree get-message-ids)) + (make-obsolete (intern (format "notmuch-query-%s" fun)) nil "notmuch 0.37")) (provide 'notmuch-query) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index aded1ee7..0954d876 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -32,7 +32,6 @@ (require 'notmuch-lib) (require 'notmuch-tag) -(require 'notmuch-query) (require 'notmuch-wash) (require 'notmuch-mua) (require 'notmuch-crypto) @@ -1366,7 +1365,7 @@ If no messages match the query return NIL." (notmuch-show-previous-subject "")) ;; Use results from the first query that returns some. (while (and (not forest) queries) - (setq forest (notmuch-query-get-threads + (setq forest (notmuch--run-show (append cli-args (list "'") (car queries) (list "'")))) (when (and forest notmuch-show-single-message) (setq forest (list (list (list forest))))) diff --git a/emacs/notmuch-tree.el b/emacs/notmuch-tree.el index 303c6fad..8b246a2e 100644 --- a/emacs/notmuch-tree.el +++ b/emacs/notmuch-tree.el @@ -27,7 +27,6 @@ (require 'mail-parse) (require 'notmuch-lib) -(require 'notmuch-query) (require 'notmuch-show) (require 'notmuch-tag) (require 'notmuch-parser) -- 2.35.2